美文网首页
简单的js去重

简单的js去重

作者: uuuuuuw | 来源:发表于2020-05-26 15:24 被阅读0次

    new Set

    Array.from(new Set(arr));

    var arr = [1,3,1,4,1,5,6,3,1,2];
    
    Array.from(new Set(arr));//[1, 3, 4, 5, 6, 2]
    

    双重循环去重

    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", {…}, {…}] 
    

    filter去重

    function unique(arr) {
      return arr.filter(function(item, index, arr) {
        //当前元素,在原始数组中的第一个索引==当前索引值,否则返回当前元素
        return arr.indexOf(item, 0) === index;
      });
    }
        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", 0, "a", {…}, {…}]
    

    相关文章

      网友评论

          本文标题:简单的js去重

          本文链接:https://www.haomeiwen.com/subject/doqvahtx.html