我正在尝试使用Underscore(或Lodash)从一个阵列中删除另一个阵列的每个成员。例如,如果我有数组
[1, 5, 2]
如何从其他数组中有效地删除该数组的每个成员的每个实例,例如:
[1, 1, 7, 2, 3, 6, 3, 4, 5, 6, 6, 7, 8]
我期待得到:
[7, 3, 6, 3, 4, 6, 6, 7, 8]
结果是。我对_.without()的所有尝试都失败了,但我有一种潜在的怀疑,我只是没有正确地调用它。
提前感谢您的帮助!
答案 0 :(得分:2)
尝试_.difference()
...
返回数组中不存在于其他数组中的值。
_.difference([1, 1, 7, 2, 3, 6, 3, 4, 5, 6, 6, 7, 8], [1, 5, 2]);
答案 1 :(得分:1)
var a = [1, 1, 7, 2, 3, 6, 3, 4, 5, 6, 6, 7, 8];
var b = [1, 5, 2];
console.log(_.difference(a,b));