js数组

片段1

 1 //有  [1, [2, [3, 4]], 5, 6];
 2 //输出[ 1, 2, 3, 4, 5, 6 ]
 3 
 4 var aa = [1, [2, [3, 4]], 5, 6];
 5 
 6 //第一种方法
 7 var bb = aa.toString().split(',').map(function(v){
 8    return +v;
 9 });
10 
11 //第二种方法
12 function flatArray(notArray){
13   return notArray.reduce(function(prev, cur, index){
14      var deeper = [].concat(cur).some(Array.isArray);
15      return prev.concat(deeper ? flatArray(cur) : cur);
16   }, [] );
17 }
18 
19 //第三种方法
20 function getArr(arr){
21    var newArray = [] ;
22    (function a(arr){
23        
24         for( var i = 0 ; i < arr.length ; i++ ){
25               if(arr[i].constructor == Array){
26                     a(arr[i])
27               }else{
28                   newArray.push(arr[i]);
29               }
30         }
31    })(arr);
32 
33    return newArray;
34 }

片段2

 1 var  selects = new Array();
 2 var  selectsCopy = new Array();
 3 Array.prototype.contans = function(obj){
 4   var i = this.length ;
 5     while(i--){
 6         if(this[i] === obj){
 7           return true;
 8           }
 9         }
10   return false;
11 }
12 
13 //level 抽奖的等级
14 //num 抽奖个数
15 //selects 需要比较的数组
16 
17 function compare(num1 , num2){
18    if(num1 > num2){
19       return 1;
20    }if(num1 < num2){
21       return -1;
22    }else{
23       return 0;
24    }
25 }
26 var selectPeople = function(level, num, selects){
27    while(num > 0){
28      aaa = parseInt(Math.random()*20000);
29      if(!selectsCopy.contans(aaa)){
30         selects.push([level, aaa]);
31         selectsCopy.push(aaa);
32         num--;
33      }
34      
35    }
36    return selects;
37 };
原文地址:https://www.cnblogs.com/maduar/p/4554648.html