首页 > 编程语言 > 详细

js中的数组去重方法总结

时间:2021-03-26 21:48:53      阅读:32      评论:0      收藏:0      [点我收藏+]
   //数组去重函数
      
      var arr=[3,3,4,13,7,8,8,9];
      
      function uniqueArray1(arr){
        console.time();
        var tmp=[];
        for(let i=0,len=arr.length;i<len;i++){
          let flag=true;
          for(let j=0,len=tmp.length;j<len;j++){
              if(arr[i]==tmp[j]){
                flag=false;
                break;
              }
          }
          if(flag){
            tmp[tmp.length]=arr[i];
          }
        }
        console.timeEnd();
        return tmp;

      }
      //0.029052734375 ms

      //利用哈希表实现去重
      

      function uniqueArray2(arr){
        console.time();
        var tmp=[],hash={};
        for(let i=0;arr[i]!=null;i++){

          if(!hash[arr[i]]){
            tmp.push(arr[i]);
            hash[arr[i]]=true;
          }
        }
        console.timeEnd();  
        return tmp;

      }
      //0.012939453125 ms


      //利用map去重

      function uniqueArray3(arr){
        console.time();
        var tmp=[];                       //定义空数组
        arr.map(function(x){            //用 map 遍历数组
          if(tmp.indexOf(x)==-1){       //如果当前值没有存在空数组中
            tmp.push(x);              //追加到空数组中
          }
          }
        );
        console.timeEnd();
        return tmp;
      } 
      //0.05224609375 ms
      console.log(uniqueArray1(arr));

 

js中的数组去重方法总结

原文:https://www.cnblogs.com/cuican-star/p/14584046.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!