JavaScript Array reduce() Method
The JavaScript Array.reduce() method iterates over an array, applying a reducer function to each element, accumulating a single output value. It takes an initial value and processes elements from left to right, reducing the array to a single result. It is useful for doing operations like max in an array, min in an array and sum of array
Example to do sum of an array using reduce
const a = [2, 4, 6];
// Use reduce to calculate the sum
const sum = a.reduce((acc, x) => acc + x, 0);
console.log(sum);
Output
12
We use a lambda expression to provide a function to reduce. We can provide our own function. Below is an example to do sum with out own function.
const a = [2, 4, 6];
function sum2(acc, x) {
return acc + x;
}
const sum = a.reduce(sum2, 0);
console.log(sum);
Output
12
Syntax of reduce():
array.reduce( function(total, currentValue, currentIndex, arr), initialValue )
Return value:
The JavaScript array reduce method returns a single value/element after traversing the complete array.
Parameters:
This method accepts five parameters as mentioned above and described below:
- function(total, currentValue, index, arr): It is the required parameter and is used to run for each element of the array. It contains four parameters which are listed below:
- initialValue: It is an optional parameter and is used to specify the value to be passed to the function as the initial value.
Parameter Name | Description | Required/Optional |
---|---|---|
total | Specifies the initial value or previously returned value of the function | Required |
currentValue | Specifies the value of the current element | Required |
currentIndex | Specifies the array index of the current element | Optional |
arr | Specifies the array object the current element belongs to | Optional |
Sum of lengths of all Strings using reduce()
const a = ["js", "html", "css"];
// Use reduce to calculate the sum of the lengths of the strings
const res = a.reduce((acc, str) => acc + str.length, 0);
console.log(res);
Output
9
We have a complete list of JavaScript Array methods, to check those please go through this Javascript Array Complete reference article.