.transform(object, [iteratee=.identity], [accumulator])
An alternative to _.reduce
; this method transforms object
to a new accumulator
object which is the result of running each of its own enumerable string keyed properties thru iteratee
, with each invocation potentially mutating the accumulator
object. If accumulator
is not provided, a new object with the same [[Prototype]]
will be used. The iteratee is invoked with four arguments: (accumulator, value, key, object). Iteratee functions may exit iteration early by explicitly returning false
.
Since
1.3.0
Arguments
object
(Object): The object to iterate over.[iteratee=.identity]
(Function)_: The function invoked per iteration.[accumulator]
(*): The custom accumulator value.
Returns
(*): Returns the accumulated value.
Example
_.transform([2, 3, 4], function(result, n) {result.push(n *= n);return n % 2 == 0;}, []);// => [4, 9]_.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {(result[value] || (result[value] = [])).push(key);}, {});// => { '1': ['a', 'c'], '2': ['b'] }
当前内容版权归 lodash.com 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 lodash.com .