我正在使用lodash进行一些计算,但有一个函数是不起作用的,例如,我使用了'difference‘。
他的用法是:
_.difference([2, 1], [2, 3]);
output: [1]
但是当我应用到我的数组时:
_.difference([5111471, 5111513], [5111471,5111505,5111513]);
output:[]
而不是给我5111505,而是给我一个空数组。
发布于 2016-09-05 17:12:34
_.difference
返回第一个数组中没有出现在第二个数组中的元素。在您的示例中没有这样的元素,因此结果为空。如果您想要一个symmetric difference (即出现在第一个或第二个数组中的元素,但不是同时出现在这两个数组中),您可以这样做
diff = _.union(_.difference(a, b), _.difference(b, a))
发布于 2016-09-05 17:13:08
_.difference实际上并不返回两个数组之间的差值,而是返回第一个数组减去第二个数组。因此,要返回5111505,您需要执行以下操作:
_.difference([5111471,5111505,5111513],[5111471, 5111513]);
有关详细信息,请参阅文档:https://lodash.com/docs/4.15.0#difference
https://stackoverflow.com/questions/39335048
复制相似问题