javascript reduce
const sum = array.reduce((accumulator, element) => {
return accumulator + element;
}, 0);
// An example that will loop through an array adding
// each element to an accumulator and returning it
// The 0 at the end initializes accumulator to start at 0
// If array is [2, 4, 6], the returned value in sum
// will be 12 (0 + 2 + 4 + 6)
const product = array.reduce((accumulator, element) => {
return accumulator * element;
}, 1);
// Multiply all elements in array and return the total
// Initialize accumulator to start at 1
// If array is [2, 4, 6], the returned value in product
// will be 48 (1 * 2 * 4 * 6)function reduce(array, func, seed) {
let previousResult;
if (seed === undefined) {
previousResult = array[0];
for (let i = 1; i < array.length; i++) {
previousResult = func(previousResult, array[i], i, array);
}
console.log(previousResult);
} else {
previousResult = seed;
each(array, function(e, i, a) {
previousResult = func(previousResult, e, i, array);
});
}
return previousResult;
};var array = [36, 25, 6, 15];
array.reduce(function(accumulator, currentValue) {
return accumulator + currentValue;
}, 0); // 36 + 25 + 6 + 15 = 82let nums = [1, 2, 3];
nums.reduce((curr, next) => curr + next);var objs = [
{name: "Peter", age: 35},
{name: "John", age: 27},
{name: "Jake", age: 28}
];
objs.reduce(function(accumulator, currentValue) {
return accumulator + currentValue.age;
}, 0); // 35 + 27 + 28 = 90function getArraySum(a){
var total=0;
for(var i in a) {
total += a[i];
}
return total;
}
var payChecks = [123,155,134, 205, 105];
var weeklyPay= getArraySum(payChecks); //sums up to 722