@arr/reduce
A tiny, faster alternative to native Array.prototype.reduce
#Install
$ npm install --save @arr/reduce
#Usage
import reduce from '@arr/reduce';
const total = reduce([0, 1, 2, 3], (sum, value) => sum + value);
//=> 6
const flattened = reduce([[0, 1], [2, 3], [4, 5]], (a, b) => a.concat(b), []);
//=> [0, 1, 2, 3, 4, 5]
#API
#reduce(arr, callback[, initialValue])
#arr
Type: Array
The array to iterate upon.
#callback(accumulator, value, index, array)
Type: Function
Function to test for each element, taking four arguments:
- accumulator -- The accumulator accumulates the callback's return values.
- value -- The current element being processed in the array.
- index -- The index of the current element being processed in the array.
- array -- The array
reducewas called upon.
#initialValue
Type: Mixed
Default: arr[0]
The value to use as the first argument to the first call of the callback. If no initial value is supplied, the first element in the array will be used.
#License
MIT © Luke Edwards
See also
@arr/every(3), @arr/filter(3), @arr/filter.mutate(3), @arr/find(3), @arr/findindex(3), @arr/flatten(3), @arr/foreach(3), @arr/foreach.spec(3), @arr/includes(3), @arr/indexof(3)