1var array = [36, 25, 6, 15];
2
3array.reduce(function(accumulator, currentValue) {
4 return accumulator + currentValue;
5}, 0); // 36 + 25 + 6 + 15 = 82
1const sum = array.reduce((accumulator, element) => {
2 return accumulator + element;
3}, 0);
4// An example that will loop through an array adding
5// each element to an accumulator and returning it
6// The 0 at the end initializes accumulator to start at 0
7// If array is [2, 4, 6], the returned value in sum
8// will be 12 (0 + 2 + 4 + 6)
9
10const product = array.reduce((accumulator, element) => {
11 return accumulator * element;
12}, 1);
13// Multiply all elements in array and return the total
14// Initialize accumulator to start at 1
15// If array is [2, 4, 6], the returned value in product
16// will be 48 (1 * 2 * 4 * 6)
1// syntax: array.reduce(function, accumulator-initial-value)
2let array = [3, 7, 2, 9, 5]
3const result = array.reduce((accumulator, currentValue, currentIndex, arr) => {
4 // code
5}, initialValue)
6
7// accumulator = will store return value of the function
8// currentValue = iterate through each array element
9// currentIndex = index of currentValue
10// arr = original array
11// initialValue = set accumulator initial value
1const array1 = [1, 2, 3, 4];
2const reducer = (accumulator, currentValue) => accumulator + currentValue;
3
4// 1 + 2 + 3 + 4
5console.log(array1.reduce(reducer));
6// expected output: 10
7
8// 5 + 1 + 2 + 3 + 4
9console.log(array1.reduce(reducer, 5));
10// expected output: 15
1// Array.prototype.reduce()
2
3const array1 = [1, 2, 3, 4];
4const reducer = (accumulator, currentValue) => accumulator + currentValue;
5
6// 1 + 2 + 3 + 4
7console.log(array1.reduce(reducer));
8// expected output: 10
9
10// 5 + 1 + 2 + 3 + 4
11console.log(array1.reduce(reducer, 5));
12// expected output: 15
1Sum array elements:
2let myArr = [1,2,3,-1,-34,0]
3return myArr.reduce((a,b) => a + b,0)