Lodash - differenceBy 方法



语法

_.differenceBy(array, [values], [iteratee=_.identity])

此方法类似于 _.difference,不同之处在于它接受的 iteratee 会对数组和值的每个元素调用,生成一个比较标准,对其执行比较。结果值的顺序和引用由第一个数组决定。iteratee 使用一个参数调用:(value)。

参数

  • array (数组) − 要检查的数组。

  • [values] (...数组) − 要排除的值。

  • [iteratee=_.identity] (函数) − 根据元素调用的 iteratee。

输出

  • (数组) − 返回过滤后的值的新数组。

示例

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 } ]
lodash_array.htm
广告