Javascript 基于另一个数组从数组中删除项
我有两个阵列:Javascript 基于另一个数组从数组中删除项,javascript,jquery,arrays,Javascript,Jquery,Arrays,我有两个阵列: var firstArr = [1,2,3,4,5]; var secondArr = [2,3]; 如何获得这样的数组: [1,4,5] 我想使用一种解决方案,当数组元素是具有多个属性的对象时可以使用。使用: filter()方法使用通过的所有元素创建一个新数组 由提供的函数实现的测试 例如: firstArr.filter(function(item){ return secondArr.indexOf(item) === -1; }); 您可以使用此功能删
var firstArr = [1,2,3,4,5];
var secondArr = [2,3];
如何获得这样的数组:
[1,4,5]
我想使用一种解决方案,当数组元素是具有多个属性的对象时可以使用。使用:
filter()
方法使用通过的所有元素创建一个新数组
由提供的函数实现的测试
例如:
firstArr.filter(function(item){
return secondArr.indexOf(item) === -1;
});
您可以使用此功能删除项目
function removeA(arr) {
var what, a = arguments, L = a.length, ax;
while (L > 1 && arr.length) {
what = a[--L];
while ((ax= arr.indexOf(what)) !== -1) {
arr.splice(ax, 1);
}
}
return arr;
}
var ary = ['three', 'seven', 'eleven'];
removeA(ary, 'seven');
如果您可以使用下划线:@epascarello的可能重复项,那么这个问题不是关于删除重复项……对于OP的第二个请求(数组元素是对象),应该注意,只有当两个数组中都存在相同的对象,而不仅仅是该对象的副本时,这才有效。