📅  最后修改于: 2023-12-03 14:44:02.472000             🧑  作者: Mango
_.intersectionWith()
方法是 Lodash 库中的一个方法。它接受两个参数,第一个参数为一个数组,第二个参数为一个函数。该方法返回一个新的数组,该数组包含所有在第一个数组和第二个数组中都出现的元素,且使用传入的函数来比较数组元素。
_.intersectionWith(array, [comparator])
array
(Array): 要检查的数组。
[comparator]
(Function): 比较函数,用来比较数组元素。默认用 _.isEqual
来比较。
(Array): 返回一个新的数组,该数组包含所有在第一个数组和第二个数组中都出现的元素。
const objects = [
{ 'x': 1, 'y': 2 },
{ 'x': 2, 'y': 1 }
];
const others = [
{ 'x': 1, 'y': 1 },
{ 'x': 1, 'y': 2 }
];
_.intersectionWith(objects, others, _.isEqual);
// => [{ 'x': 1, 'y': 2 }]
上面的例子展示了如何使用 _.intersectionWith()
方法。objects
数组包含两个对象,others
数组包含两个不同的对象。由于第二个对象的 y
属性不同,所以它们不相等。_.intersectionWith()
方法使用 _.isEqual
函数对两个数组中的元素进行比较,找出它们之间的交集,返回 [ { 'x': 1, 'y': 2 } ]
的新数组。该数组包含了 objects
和 others
数组中都有的 { 'x': 1, 'y': 2 }
对象。