嵌套数组怎样去重操作

不多逼逼,直接看,一看就懂

let arr = [[1,2,3],[3,4,4,5,5],[6,7,8,9,[11,12,[12,13,[14]]]],10];
function mapArr(arr) {
    let newArr = [];
    for(var i=0;i<arr.length;i++) {
        if(Array.isArray(arr[i])) {
            let dealArr = this.mapArr(arr[i]);
            newArr = [...newArr,...dealArr];
        }else {
            newArr.push(arr[i]);
        }
    }
   let shoArr = [...new Set(newArr)];
   let arrs = shoArr.sort((a,b)=>a-b); //a-b<0 升序
   return arrs;
}
mapArr(arr);

复杂数组实现去重(只列出了一种方法)

var arr = [
    {
        a:1,
        b:2
    },
    {
        a:1,
        b:2
    },
    {
        c:3
    },
    {
        c:3
    }
]
function unique(arr){            
        for(var i=0; i<arr.length; i++){
            for(var j=i+1; j<arr.length; j++){
                if(JSON.stringify(arr[i]) == JSON.stringify(arr[j])){         //第一个等同于第二个,splice方法删除第二个
                    arr.splice(j,1);
                    j--;
                }
            }
        }
    return arr;
}
console.log(unique(arr))
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容