zoukankan      html  css  js  c++  java
  • js数组去重

    整理了下数组去重的方法

    第一种

    function noRepeat1(arr) {
                var result = [], hash = {};
                var newArry=arr.sort(function(num1,num2){return num1-num2;});
                for (var i = 0, elem; (elem = newArry[i]) != null; i++) {
                    if (!hash[elem]) {
                        result.push(elem);
                        hash[elem] = true;
                    }
                }
                return result;
            }

    第二种

    function noRepeat2(arr) {
                var temp="",Arry=[];
                var newArry=arr.sort(function(num1,num2){return num1-num2;});
                for (var i = 0; i < newArry.length; i++) {
                    if(newArry[i]!=temp){
                        temp=newArry[i];
                        Arry.push(temp);
                    }
                    else{
                        continue;
                    }
                };
                return Arry;
            }

    第一二种类似搬运比较的过程,比较好理解。下面第三种思维比较奇特,将原数组存在另一个对象的键值,输出的数组是字符串数组。

    function noRepeat3(data){  
               var a = {};  
               for (var i=0; i<data.length; i++) {  
                   var v = data[i];  
                   if (typeof(a[v]) == 'undefined'){  
                        a[v] = 1;  
                   }  
               };  
               data.length=0;  
               for (var i in a){  
                    data[data.length] = i;  
               }  
               return data;  
            } 
  • 相关阅读:
    第12-13周总结
    排球比赛计分规则
    我与计算机
    排球比赛计分规则-三层架构
    怎样成为一个高手 观后感
    最后一周冲刺
    本周psp(观众页面)
    本周psp(观众页面)
    本周工作计量
    本周总结
  • 原文地址:https://www.cnblogs.com/xiaoluoli/p/5999389.html
Copyright © 2011-2022 走看看