What is the purpose of the reduce method on an array? code example

Example 1: reduce javascript

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)

Example 2: syntax of reduce in js

[1,2,3,4,5].reduce((acc, current)=>acc+current, 0)

Example 3: reduce javascript

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;
};

Example 4: .reduce mdn

arr.reduce(callback( accumulator, currentValue[, index[, array]] )[, initialValue])

Example 5: reduce javascript

//note idx and sourceArray are optional
const sum = array.reduce((accumulator, element[, idx[, sourceArray]]) => {
	//arbitrary example of why idx might be needed
	return accumulator + idx * 2 + element 
}, 0);

Example 6: array reduce

arr.reduce(callback( accumulator, currentValue[, index[, array]] ) {
  // return result from executing something for accumulator or currentValue
}[, initialValue]);