es6方法过滤掉两个数组中对象属性值相等的项
方法1
let arr1=[{id:1,name:'老大'},{id:2,name:'老二'}]
let arr2=[{id:1,name:'老大'},{id:3,name:'老三'},{id:4,name:'老四'},{id:5,name:'老五'},]
let add=arr2.filter(item=>!arr1.some(ele=>ele.id===item.id))
console.log(add)
方法2:
const arr1 = [{ id: 1, name: '老大' }, { id: 2, name: '老二' }];
const arr2 = [{ id: 1, name: '老大' }, { id: 3, name: '老三' }];
// 获取到arr1的所有id集合
let arr1Ids = arr1.map(item => item.id);
// 过滤arr2中不包含arr1相同的id数组。
const result = arr2.filter(item => !arr1Ids.includes(item.id));
console.log(result);
版权声明:本文为CSDN博主「为什么名字都被占用」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_37588752/article/details/100185309