我想了解从另一个数组的所有元素中筛选一个数组的最佳方法。我尝试了筛选函数,但我不知道如何给它我想要删除的值。
类似内容:
var array = [1,2,3,4];
var anotherOne = [2,4];
var filteredArray = array.filter(myCallback);
// filteredArray should now be [1,3]
function myCallBack(){
return element ! filteredArray;
//which clearly can't work since we don't have the reference <,<
}
如果过滤器功能不是有用的,你将如何实现它?
编辑:我检查了可能重复的问题,对于那些容易理解javascript的人来说,它可能很有用。如果答案被检查为好,事情就会变得简单。
您可以使用filter()
函数的this
参数来避免将筛选器数组存储在全局变量中。
null
var filtered = [1, 2, 3, 4].filter(
function(e) {
return this.indexOf(e) < 0;
},
[2, 4]
);
console.log(filtered);
我会这样做;
null
var arr1 = [1,2,3,4],
arr2 = [2,4],
res = arr1.filter(item => !arr2.includes(item));
console.log(res);