Lodash - differenceBy 方法
语法
_.differenceBy(array, [values], [iteratee=_.identity])
此方法与 _.difference 类似,不同之处在于它接受 iteratee,它会针对 array 和 values 的每个元素调用 iteratee 来生成比较它们的标准。结果值的顺序和引用由第一个数组决定。iteratee 使用一个参数调用:(value)。
参数
array (Array) − 要检查的数组。
[values] (...Array) −要排除的值。
[iteratee=_.identity] (函数) − 每个元素调用的迭代器。
输出
(数组) − 返回新的过滤值数组。
示例
var _ = require('lodash'); var numbers = [1.7, 2.4, 3.6, 4.2]; var listOfNumbers = ''; listOfNumbers = _.differenceBy(numbers, [1.3, 2.2], Math.floor); console.log(listOfNumbers); listOfNumbers = _.differenceBy([{ 'x': 4 }, { 'x': 1 }], [{ 'x': 4 }], 'x'); console.log(listOfNumbers);
将上述程序保存在 tester.js 中。运行以下命令执行该程序。
命令
\>node tester.js
输出
[ 3.6, 4.2 ] [ { x: 1 } ]