Last Updated : 11 Jul, 2025
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
JavaScript
const a = [2, 4, 6];
// Use reduce to calculate the sum
const sum = a.reduce((acc, x) => acc + x, 0);
console.log(sum);
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.
JavaScript
const a = [2, 4, 6];
function sum2(acc, x) {
return acc + x;
}
const sum = a.reduce(sum2, 0);
console.log(sum);
Syntax of reduce():
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 Optionalarray.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.
Sum of lengths of all Strings using reduce()
JavaScript
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);
We have a complete list of JavaScript Array methods, to check those please go through this Javascript Array Complete reference article.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4