码迷,mamicode.com
首页 > Web开发 > 详细

js实现从长度为100的数组中随机抽取5个不同值

时间:2014-09-18 12:54:33      阅读:399      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   使用   ar   for   div   sp   log   

方法一:这个是我的方法,望大家指正……

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>从长度为100的数组中随机抽取5个不同值</title>
</head>
<body>
    <script>
        var arr = new Array(100);
        var flag_a = new Array(100);
        /*这个是特色。本身是想给数组每一个元素设置一个flag属性,但是行不通。所以就创建一个相同大小的布尔类型的数组*/
        for (var i = 0; i < arr.length; i++) {
            arr[i] = "这是第"+i+"";
            flag_a[i] = false;
        }
        for (var i = 0; i < 5; i) {
            var r = Math.floor(Math.random()*100);
            if(!flag_a[r]){
                document.write(i+1+":"+arr[r]+"<br/>");
                flag_a[r] = true;
                i++;/*将i++放置到这个地方的话,我觉得挺有创意的……(*^__^*) 嘻嘻……*/
            }
        }
    </script>
</body>
</html>

方法二:这个方法跟上边的有异曲同工之妙,是别人想的,供大家参考……

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>从长度为100的数组中随机抽取5个不同值02</title>
</head>
<body>
    <script>
        var arr = new Array(100);
        for (var i = 0; i < arr.length; i++) {
            arr[i] = "这是第"+i+"";
        }
        for (var i = 0; i < 5;) {
            var r = Math.floor(Math.random()*100);
            if(arr[r]!=null){
                document.write(i+1+":"+arr[r]+"<br/>");
                arr[r] = null;/*通过将使用过的设置为null来判断是否使用过,也很好……*/
                i++;
            }
        }
    </script>
</body>
</html>

 

js实现从长度为100的数组中随机抽取5个不同值

标签:style   blog   color   使用   ar   for   div   sp   log   

原文地址:http://www.cnblogs.com/bjchenxn/p/3978787.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!