js实现嵌套数组对象去重

在JavaScript学习中,小编向大家将介绍过for循环嵌套、三元运算符与if-else嵌套方法。那么对于前逃过的数组,如果出现重复不需要的元素又该如何操作呢?本文提供两种嵌套数组对象去重方法:1、可以将各种格式转成字符串,对格式一致的对象数组实现去重。2、数组去除嵌套之后再去重。

1、可以将各种格式转成字符串,对格式一致的对象数组实现去重。

constdata=[{name:1,age:1},{name:2,age:2},{name:1,age:1},{name:2,age:2}]
constChangeArr=(data)=>{
constnewdata=data.map(item=>(JSON.stringify(item)))
return[...newSet(newdata)]
}
console.log(ChangeArr(data))
//["{"name":1,"age":1}","{"name":2,"age":2}"]

2、数组去除嵌套之后再去重。

functionunite(arr1,arr2,arr3){//数组拆嵌套再去重
for(vari=1;i<arguments.length;i++)
{
arr1.push(arguments[i]);
}
constflatten=(arr)=>{
returnarr.reduce(
function(acc,val){
returnacc.concat(Array.isArray(val)?flatten(val):val);
},[]);
};
arr1=flatten(arr1);
//varobj={};
//vararray=[];
functionunique(array1){
returnarray1=array1.filter(function(item,index,array){
returnarray1.indexOf(item)===index;
});
}
arr1=unique(arr1);
returnarr1;
}
c(unite([1,3,2],[5,2,1,4],[2,1]));

原文来自:https://www.py.cn

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容