
temp = {},//用于id判断重复
result = []//最后的新数组
//遍历c数组,将每个item.id在temp中是否存在值做判断,如不存在则对应的item赋值给新数组,并将temp中item.id对应的key赋值,下次对相同值做判断时便不会走此分支,达到判断重复值的目的;
c.map((item,index)=>{
if(!temp[item.id]){
result.push(item)
temp[item.id] = true
}
})
console.log(result)
filterTransFer(arr) { // arr:需要过滤排查的数组
consthash= {}
constnewArr=arr.reduceRight((item,next)=>{
hash[next.id] // next.id只是其中一个条件
?''
: (hash[next.id] =true&&item.push(next))
returnitem
}, [])
this.transferList=newArr //newArr就是过滤后的数组,需要重新赋值
},
var list = [
{ id: "1", name: "test1", rName: "the1" },
{ id: "1", name: "test1", rName: "the2" },
{ id: "1", name: "test1", rName: "the3" },
{ id: "2", name: "test2", rName: "the1" },
{ id: "2", name: "test2", rName: "the2" },
{ id: "3", name: "test3", rName: "the1" }
]
var list2 = []
for (var i in list) {
var list3 = []
for (var j in list) {
if (list[i].id == list[j].id&&list[j].key!=1) {
list[j].key=1
list3.push(list[j])
}
}
if(list3.length>0){
list2.push(list3)
}
}
console.log(list2)
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)