zoukankan      html  css  js  c++  java
  • 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 };
  • 相关阅读:
    websocketpp相关
    大地水准面、大地基准面
    ubuntu18.04 和 qt 5.13.1 安装
    高斯——克吕格投影反算
    高斯——克吕格投影正算
    缓和曲线10麦克康奈尔
    vsCode 需安装的扩展
    显示windows电脑上已连接过的wifi密码
    linux Java项目CPU内存占用高故障排查
    tcpdump常用参数说明及常见操作
  • 原文地址:https://www.cnblogs.com/maduar/p/4554648.html
Copyright © 2011-2022 走看看