📅  最后修改于: 2023-12-03 15:40:44.615000             🧑  作者: Mango
_.differenceWith() 方法是 Lodash 库中用于获取两个数组中不同项的方法之一。它通过一个自定义的比较函数来判断两个数组中的每个元素是否相等,从而找出不同的元素。
_.differenceWith(array, [values], [comparator])
参数:
array
:(Array)要从中过滤出不同项的数组values
:(Array)要过滤掉的数组comparator
:(Function)自定义比较函数返回值:
(Array)包含不同项的新数组
const array1 = [{ x: 1, y: 2 }, { x: 2, y: 1 }];
const array2 = [{ x: 1, y: 2 }, { x: 3, y: 4 }];
_.differenceWith(array1, array2, _.isEqual);
// => [{ 'x': 2, 'y': 1 }]
在上述示例中,我们比较了两个数组 array1
和 array2
,使用了 _.isEqual
自定义比较函数来判断两个元素是否相等。结果我们得到了包含不同项的新数组 [{ 'x': 2, 'y': 1 }]
。
同时,注意到与其他 Lodash 的数组操作方法一样,_.differenceWith() 方法是一个纯函数,不会修改传入的参数。
Lodash 中的 _.differenceWith() 方法提供了一种快速查找数组不同项的方法。通过传入一个自定义比较函数,我们可以灵活地控制判断元素相等的逻辑。使用该方法能够帮助编写更加灵活、高效的 JavaScript 代码,提高开发效率。