在underscore.js中寻找一个接受2个数组并返回一个新的唯一值数组的函数?像_without这样的东西
_.without([0, 1, 3, 9], [1, 3]);
我想让=> [0,9]
回来
它似乎_without的第二个参数是一个值列表,而不是一个数组。有没有人知道下划线有没有我想要的特定功能?或者我可以获取一个现有的数组,并将其转换为函数期望的值。
谢谢,
~圣地亚哥的ck
发布于 2011-04-20 04:38:15
_.without.apply(_, [arr1].concat(arr2))
[[0, 1, 3, 9]].concat([1, 3])
为[[0, 1, 3, 9], 1, 3]
;
_.without.apply(_, [[0, 1, 3, 9], 1, 3])
为_.without([0, 1, 3, 9], 1, 3)
您已经有了一个非常好的_.without
方法。因此,只需将数组转换为可以传递给函数的值列表。这就是Function.prototype.apply
的用途
发布于 2012-01-03 15:04:44
_.difference
函数应该会给出您想要的结果:
_.difference([0, 1, 3, 9], [1, 3]); // => [0, 9]
发布于 2011-04-20 04:29:56
var result = _.reject([0, 1, 3, 9], function(num) {
return _.include([1, 3], num);
});
https://stackoverflow.com/questions/5722254
复制相似问题