Js随机生成10个不重复的数字

 1 // 定义存放生成随机数的数组
 2 var array=new Array(); 
 3 // 循环N次生成随机数
 4 for(var i = 0 ; ; i++){ 
 5     // 只生成10个随机数
 6     if(array.length<10){ 
 7           generateRandom(10); 
 8     }else{ 
 9       break; 
10    } 
11 } 
12 // 循环遍历随机数数组
13 for(var i = 0 ; i < array.length; i++){ 
14      console.log(array[i]); 
15 } 
16 // 生成随机数的方法
17 function generateRandom(count){ 
18      var rand = parseInt(Math.random()*count); 
19      for(var i = 0 ; i < array.length; i++){ 
20           if(array[i] == rand){ 
21                return false; 
22           }      
23      } 
24      array.push(rand); 
25 } 

 另一种写法:

 1 function sjsz(num){
 2     var ary = [];                    //创建一个空数组用来保存随机数组
 3     for(var i=0; i<num; i++){            //按照正常排序填充数组
 4         ary[i] = i+1;
 5     }
 6     ary.sort(function(){
 7         return 0.5-Math.random();        //返回随机正负值
 8     });console.log(ary)
 9     return ary;                    //返回数组
10 }

 

posted @ 2019-03-21 11:11  我爱吃小丸子  阅读(15296)  评论(1编辑  收藏  举报