es6方法过滤掉两个数组中对象id值相等的项

时间:2019-05-16 16:41:47   收藏:0   阅读:743
let arr1=[{id:1,name:‘张三‘},{id:2,name:‘李四‘}]
let arr2=[{id:1,name:‘张三‘},{id:3,name:‘王五‘},{id:44,name:‘王柳‘},{id:45,name:‘王琦‘},]

let add=arr2.filter(item=>!arr1.some(ele=>ele.id===item.id))
  console.log(add)

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); // [{id: 3, name: "老三"}];
 

原文:https://www.cnblogs.com/wgy0528/p/10875969.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!