我正在使用lodash进行一些计算,但是有一个功能在我预期的情况下无法正常工作,我正在使用例如'差异'。
他的用法是:
_.difference([2, 1], [2, 3]);
output: [1]
但是当我申请我的阵列时:
_.difference([5111471, 5111513], [5111471,5111505,5111513]);
output:[]
而不是给我[5111505],而是给我一个空数组。
答案 0 :(得分:1)
_.difference
返回第二个数组中不存在的第一个数组的元素。您的示例中没有这样的元素,因此结果为空。如果你想要一个symmetric difference(即第一个数组或第二个数组中存在的元素,但两者都不存在),你可以做类似的事情
diff = _.union(_.difference(a, b), _.difference(b, a))
答案 1 :(得分:0)
_。差异实际上并不返回两个数组之间的差异,而是返回第一个数组减去第二个数组。所以要返回[5111505],你需要这样做:
_.difference([5111471,5111505,5111513],[5111471, 5111513]);
有关详细信息,请参阅文档: https://lodash.com/docs/4.15.0#difference