在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
暂无评论内容