Underscore.JS - método reduceRight

Sintaxis

_.reduceRight(list, iteratee, [memo], [context])

reduceRight es la variante asociativa a la derecha del método reduce para reducir todos los valores a un solo valor. Itera sobre una lista dada de elementos, llama a la función iteratee que está vinculada al objeto de contexto, si se pasa. Iteratee se llama con tres parámetros: (memo, elemento, índice, lista). En el caso de un objeto JavaScript, el objeto de iteratee será (memo, valor, clave, lista). Devuelve la lista con fines de encadenamiento.

Memo es el primer estado de la reducción, y iteratee debe devolver cada paso sucesivo. Si no se pasa ningún memo a la invocación inicial de reduce, entonces el primer elemento se pasa como memo mientras se invoca iteratee en el siguiente elemento de la lista.

Ejemplo

var _ = require('underscore');

var list = [[0], [1], [2], [3]]
//Example using reduce. prepare a single list of elements
var result = _.reduce(list, function(memo, element) { return memo.concat(element) }, []);
console.log(result);

//Example using reduceRight. prepare a single list of elements
result = _.reduceRight(list, function(memo, element) { return memo.concat(element) }, []);
console.log(result);

Guarde el programa anterior en tester.js. Ejecute el siguiente comando para ejecutar este programa.

Mando

\>node tester.js

Salida

[ 0, 1, 2, 3 ]
[ 3, 2, 1, 0 ]