0
点赞
收藏
分享

微信扫一扫

数组去重,方法三

 // 方法三(利用对象的属性值相同会被覆盖的特点)
    var arr =[1,2,3,2,1,5,3,5,4,7,4,8,5,8,5,7,5];
    // 新建一个对象
    var obj ={};
    // 再新建一个数组
    var arr1 = [];
    for (var i =0;i<=arr.length-1;i++){

        // 如果对象中没有这个属性,将这个arr[i]添加到新数组zhong
        if(!obj[arr[i]]){
            arr1.push(arr[i]);
            // 并将这个数组单元值作为对象的属性,给它赋值为1;
            obj[arr[i]]=1;
            // console.log(obj);
        }
        else{
            obj[arr[i]]++;
        }
    }
    console.log(arr1);
    // 方法三的不同写法
    var arr =[1,3,2,2,54,3,6,4,7,54,6,8,5,7,54,6,7,54,45,7,75,5667,7,2]
    // 利用数组的下标重复会被覆盖掉的原理
    var arr3 =[];
    for (var int in arr){
        // 将arr的数值付给arr3的下标
        arr3[arr[int]]=1;
    }
    // 将arr3的属性值输出到新的数组中
    var newarr=[];
    arr3.forEach(function(v,k){
        newarr.push(k);
    })
    console.log(newarr);

举报

相关推荐

0 条评论