// 根据obj1中name字段里的值删除obj2,如何实现?
上面这个是试题,意思也不太懂,我的理解是去重,如果不是这个意思求指出。
下面是我的解题方法,请问有没有更好的方法。不敢相信这么简单
let obj1 = [{
name:'tao'
},{
name:'tao2'
},{
name:'tao3'
}]
let obj2 = [{
name:'tao'
},{
name:'tao2'
},{
name:'tao4'
}]
let newArr = [];
let a = obj1.map(x=>x.name)
obj2.map((x,i)=>{
if (!a.includes(x.name)) {
console.log(1,x.name)
newArr.push(x)
}
})
console.log(newArr)
###let obj1 = [{
name:'tao'
},{
name:'tao2'
},{
name:'tao3'
}]
let obj2 = [{
name:'tao'
},{
name:'tao2'
},{
name:'tao4'
}]
var names = obj1.reduce((res,item) => (res.add(item.name), res), new Set());
obj2 = obj2.filter(v => !names.has(v.name));
console.log(obj2)