javascript – 过滤器阵列不在另一个阵列中

前端之家收集整理的这篇文章主要介绍了javascript – 过滤器阵列不在另一个阵列中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
需要根据另一个数组过滤一个数组.是否有淘汰的实用功能?否则我需要使用 javascript

第一:

var obj1 = [{
    "visible": "true","id": 1
},{
    "visible": "true","id": 2
},"id": 3
},{
    "Name": "Test3","id": 4
}];

第二:

var obj2 = [ 2,3]

现在我需要根据obj2过滤obj1并从obj1中返回上面数据中不在obj2 omittng 2,3中的项目(对象1 Id的比较)

输出

[{
    "visible": "true","id": 4
}];

解决方法

你可以简单地使用过滤器运行obj1并在obj2上使用indexOf来查看它是否存在.如果值不在数组中,则indexOf返回-1,并且当回调返回true时,filter包含该项.
var arr = obj1.filter(function(item){
  return obj2.indexOf(item.id) === -1;
});

猜你在找的JavaScript相关文章