有如下两个数组:
var arr1 = [
{
name:"牛",
id:1
},
{
name:'羊',
id:2
}
],
arr2 = [
{
name:'羊',
id:2
},
{
name:'牛蛙',
id:3
},
{
name:'螃蟹',
id:4
}
];
arr2.push(arr1)之前,需要判断arr2内是否已经存在arr1内的元素(通过id判断),如果已经存在,则不添加,否则就push。有没有什么好的精简的方法?
这个问题本质上就是求几个数组的交集,再怎么精简都一定要先遍历这些数组去获取id值相同的元素,最简单的方法是自己封装一个函数,或者用lodash、ramda之类的工具库: