_.intersection([arrays])
创建唯一值的数组,这个数组包含所有给定数组都包含的元素。(注:可以理解为给定数组的交集)
const_=require('lodash'); console.log(_.intersection([2, 1], [4, 2], [1, 2]))
输出:
[2]
_.intersectionBy([arrays], [iteratee=_.identity])
这个方法类似_.intersection
,区别是它接受一个 iteratee
调用每一个arrays
的每个值以产生一个值,通过产生的值进行了比较。结果值是从第一数组中选择。iteratee 会传入一个参数:(value)。
const_=require('lodash'); console.log(_.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x'))
输出:
_.intersectionWith([arrays], [comparator])
这个方法类似_.intersection
,区别是它接受一个 comparator
调用比较arrays
中的元素。结果值是从第一数组中选择。comparator 会传入两个参数:(arrVal, othVal)。
const_=require('lodash'); varobjects= [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]; varothers= [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }]; console.log(_.intersectionWith(objects, others, _.isEqual))
输出: