JavaScript Array reduceRight()

Examples

Subtract the numbers in the array, starting from the end:

const numbers = [175, 50, 25];

document.getElementById("demo").innerHTML = numbers.reduceRight(myFunc);

function myFunc(total, num) {
  return total - num;
}
Try it Yourself »

Subtract the numbers, right-to-left, and display the sum:

const numbers = [2, 45, 30, 100];
document.getElementById("demo").innerHTML = numbers.reduceRight(getSum);

function getSum(total, num) {
  return total - num;
}
Try it Yourself »

Description

The reduceRight() method executes a reducer function for each array element.

The reduceRight() method works from right to left.

The reduceRight() method returns a single value: the function's accumulated result.

The reduceRight() method does not execute the function for empty elements.

Note

At the first callback, there is no return value from the previous callback.

Normally, the last array element is used as initial value, and the iteration starts from the element before.

If an initial value is supplied, this is used, and the iteration starts from last element.

See Also:

The Array reduce() Method


Syntax

array.reduceRight(function(total, currentValue, currentIndex, arr), initialValue)

Parameters

Parameter Description
function() Required.
A function to be run for each element in the array.
Reducer function parameters:
total Required.
The initialValue, or the previously returned value of the function.
currentValue Required.
The value of the current element.
currentIndex Optional.
The index of the current element.
arr Optional.
The array the element belongs to.
initialValue Optional.
A value to be passed to the function as the initial value

Return Value

The accumulated result from the last call of the callback function.


Browser Support

reduceRight() is an ECMAScript5 (ES5) feature.

ES5 (JavaScript 2009) fully supported in all modern browsers since July 2013:

Chrome
23
IE/Edge
10
Firefox
21
Safari
6
Opera
15
Sep 2012 Sep 2012 Apr 2013 Jul 2012 Jul 2013


Copyright 1999-2023 by Refsnes Data. All Rights Reserved.