📜  Lodash _.intersectionBy() 方法(1)

📅  最后修改于: 2023-12-03 15:32:44.506000             🧑  作者: Mango

Lodash _.intersectionBy() 方法

_.intersectionBy() 方法是 Lodash 中的一个数组方法,用于找出多个数组中的共同元素,根据一个指定的迭代器函数对每个元素进行比较。

语法
_.intersectionBy([arrays], [iteratee=_.identity])

参数

  • [arrays] (Array): 要检查的数组集合。
  • [iteratee=_.identity] (Function): 迭代器函数,用于处理每个元素后再比较。

返回值

(Array): 返回一个新的去重后的共同元素数组。

使用示例
const _ = require('lodash');

const arr1 = [{ 'x': 1 }, { 'x': 2 }];
const arr2 = [{ 'x': 2 }, { 'x': 3 }];
const arr3 = [{ 'x': 1 }, { 'x': 4 }];

const result = _.intersectionBy(arr1, arr2, arr3, 'x');

console.log(result);
// => [{ 'x': 2 }]

在上面的例子中,_.intersectionBy() 方法将数组 arr1arr2arr3 作为参数,通过 x 属性对每个对象进行比较,返回了一个新的数组,该数组包含对所有三个数组均存在的对象,故最终输出结果为 [{ 'x': 2 }]

总结

_.intersectionBy() 方法是 Lodash 提供的一个简便方法,可以轻松找出多个数组中的共同元素,而不必自己实现一个复杂的算法来达到同样的效果。如果您经常需要操作数组,并且需要像前面的例子中那样查找共同元素,那么 _.intersectionBy() 将是一个非常强大的工具,您值得尝试一下。