数组的两种去重方法

数组较好的两种去重方法

对于整数,都能较好的去重

1.利用对象的属性名的唯一性

 // var Arr = [1,2,1,1,1,2,4,3,5,3,5,3];
        var Arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,'NaN','NaN', 0, 0, 'a', 'a',{
    
    },{
    
    }];
        // 1.利用对象的属性名的唯一性
        function uniqueArr(arr){
    
    
            var newArr=[];
            var temp = {
    
    };
            var len =arr.length;
            for(let i =0;i<len;i++){
    
    
                if(!temp[arr[i]]){
    
    
                    temp[arr[i]] ='true';
                    newArr.push(arr[i]);
                }
            }
            return newArr;
        }
        

分不清字符串的xxx和 “xxx”


2.利用ES6新特性 Set

// var Arr = [1,2,1,1,1,2,4,3,5,3,5,3];
        var Arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,'NaN','NaN', 0, 0, 'a', 'a',{
    
    },{
    
    }];
		var result = uniqueArr(Arr);
        console.log(result);
        // 分不清字符串的xxx和 "xxx"

        // 2.利用ES6新特性 Set
        function distinct(arr){
    
    
            return Array.from(new Set(arr));
        }

        var result2 = distinct(Arr);
        console.log(result2);

        

分不清空对象{}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_45664402/article/details/114335768