Lodash - transform 方法



语法

_.transform(object, [iteratee=_.identity], [accumulator])

作为 _.reduce 的一种替代方案;此方法将对象转换为一个新的累加器对象,该对象是对每个自有可枚举字符串键名属性通过迭代器运行的结果,每次调用都有可能改变累加器对象。如果没有提供累加器,将使用具有相同 [[Prototype]] 的新对象。迭代器是通过四个参数进行调用的:(累加器、值、键、对象)。迭代器函数可以明确返回 false 来退出早期迭代。

参数

  • object (对象) - 要迭代的对象。

  • [iteratee=_.identity] (函数) - 每个迭代调用的函数。

  • [accumulator] (*) - 自定义的累加器值。

输出

  • (*) - 返回累加值。

示例

var _ = require('lodash');
var array = [1, 2, 3, 4];
var transformedResult = _.transform(array, function(result, n) {   
   result.push(n *= n);
   return n % 2 == 0;
}, []);
console.log(transformedResult);

tester.js 中保存上述程序。运行以下命令来执行此程序。

命令

\>node tester.js

输出

[ 1 ]
lodash_object.htm
广告