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

    //本来以为挺简单,还是天真,考虑,NaN,{}.

    1:arr.splice(i+1,1);//表示插入删除元素,表示删除i+1个元素,1表示删除一个

    //手写数组去重

                             var arr = [1,2,3,3];

    //排序的数组 arr.sort();//排序好了就不写了

                             for(var i=0;i<arr.length-1;i++)

                             {

                                      if(arr[i]==arr[i+1])

                                      {

                                              arr.splice(i+1,1);

                                              i--;

                                      }

                             }

                             console.log(arr);

    2:ES6去重

    去重的原理:

    Set()结构本身的特性:Set容器 : 无序不可重复的多个value的集合体

    Array.from(v) : 将伪数组对象或可遍历对象转换为真数组

    function unique (arr) {
      return Array.from(new Set(arr))
    }
    var arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,'NaN', 0, 0, 'a', 'a',{},{}];
    console.log(unique(arr))
     //[1, "true", true, 15, false, undefined, null, NaN, "NaN", 0, "a", {}, {}]6方法去重

    3:ES5去重

    function unique(arr){            
            for(var i=0; i<arr.length; i++){
                for(var j=i+1; j<arr.length; j++){
                    if(arr[i]==arr[j]){         //第一个等同于第二个,splice方法删除第二个
                        arr.splice(j,1);
                        j--;
                    }
                }
            }
    return arr;
    }
    var arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,'NaN', 0, 0, 'a', 'a',{},{}];
        console.log(unique(arr))
    //[1, "true", 15, false, undefined, NaN, NaN, "NaN", "a", {…}, {…}]     //NaN和{}没有去重,两个null直接消失了

    4:更多参考

    https://segmentfault.com/a/1190000016418021

  • 相关阅读:
    HDU 2011 (水)
    HDU 2010 (水)
    HDU 2009 (水)
    HDU 2007 (水)
    mcsscm
    Meow~
    沉沦魔是战5渣
    谈谈和81的过往
    量子力学就像一座破房子 Quantum power is like a broken house.
    能源危机的应对方案(基于Energy不守恒定律)Response to the Energy Crisis (Based on the Law of Mana Non-Conservation)
  • 原文地址:https://www.cnblogs.com/love-life-insist/p/9945690.html
Copyright © 2011-2022 走看看