let list00 = [{name: '111'}, {name: '222'}, {name: '555'}]
let list01 = [{name: '111'}, {name: '222'}, {name: '333'} {name: '555'}, {name: '666'}]
得到 list03 = [{name: '333'},{name: '666'}]
let list00 = [{name: '111'}, {name: '222'}, {name: '555'}]
let list01 = [{name: '111'}, {name: '222'}, {name: '333'} {name: '555'}, {name: '666'}]
得到 list03 = [{name: '333'},{name: '666'}]
两个数组对象去重(可百度
let list00 = [{name: '111'}, {name: '222'}, {name: '555'}]
let list01 = [{name: '111'}, {name: '222'}, {name: '333'},{name: '555'}, {name: '666'}]
let list03= list01.filter((v) =>
list00.every((val) => val.name != v.name)
)
console.log(list03)
试了一下,这样也行
list01.reduce((pre,item) => {
return JSON.stringify(list00).indexOf(JSON.stringify(item))!==-1?pre:[...pre,item]
},[]);
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
用 Lodash 方便,使用
_.differenceBy()
也可以自己写,每次去遍历检查是否存在(用 some)
或者用 every(取反逻辑往里放)
如果需要比较的多,可以先做个集合来判断