Underscore.JS - metodo reduceRight

Sintassi

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

reduceRight è la variante associativa a destra del metodo reduce per ridurre tutti i valori a un singolo valore. Itera su un dato elenco di elementi, chiama la funzione iteratee che è associata all'oggetto contesto, se passata. Iteratee viene chiamato con tre parametri: (memo, element, index, list). In caso di oggetto JavaScript, l'oggetto iterato sarà (memo, valore, chiave, elenco). Restituisce l'elenco a scopo di concatenamento.

Memo è il primo stato della riduzione e ogni passaggio successivo dovrebbe essere restituito per iterazione. Se nessun memo viene passato alla chiamata iniziale di reduce, il primo elemento viene invece passato come memo mentre invokee itera sull'elemento successivo nell'elenco.

Esempio

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);

Salvare il programma sopra in formato tester.js. Eseguire il seguente comando per eseguire questo programma.

Comando

\>node tester.js

Produzione

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