Simplify _.reduce and _.reduceRight.

This commit is contained in:
John-David Dalton
2015-12-14 08:25:28 -08:00
parent 83720f457e
commit 46bdf5d79d

View File

@@ -7701,11 +7701,10 @@
* // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed) * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed)
*/ */
function reduce(collection, iteratee, accumulator) { function reduce(collection, iteratee, accumulator) {
var initFromCollection = arguments.length < 3; var func = isArray(collection) ? arrayReduce : baseReduce,
iteratee = getIteratee(iteratee, 4); initFromCollection = arguments.length < 3;
return isArray(collection)
? arrayReduce(collection, iteratee, accumulator, initFromCollection) return func(collection, getIteratee(iteratee, 4), accumulator, initFromCollection, baseEach);
: baseReduce(collection, iteratee, accumulator, initFromCollection, baseEach);
} }
/** /**
@@ -7729,11 +7728,10 @@
* // => [4, 5, 2, 3, 0, 1] * // => [4, 5, 2, 3, 0, 1]
*/ */
function reduceRight(collection, iteratee, accumulator) { function reduceRight(collection, iteratee, accumulator) {
var initFromCollection = arguments.length < 3; var func = isArray(collection) ? arrayReduceRight : baseReduce,
iteratee = getIteratee(iteratee, 4); initFromCollection = arguments.length < 3;
return isArray(collection)
? arrayReduceRight(collection, iteratee, accumulator, initFromCollection) return func(collection, getIteratee(iteratee, 4), accumulator, initFromCollection, baseEachRight);
: baseReduce(collection, iteratee, accumulator, initFromCollection, baseEachRight);
} }
/** /**