Esiste un metodo Array reduce()
per ottenere un valore dall'Array. Esempio:
[0,1,2,3,4].reduce(function(previousValue, currentValue, index, array){
return previousValue + currentValue;
});
Qual è il modo migliore per ottenere lo stesso con gli oggetti? Mi piacerebbe fare questo:
{
a: {value:1},
b: {value:2},
c: {value:3}
}.reduce(function(previous, current, index, array){
return previous.value + current.value;
});
Tuttavia, Object non sembra avere alcun reduce()
metodo implementato.
reduce
metodo. Vorrei controllare lì. Tuttavia, la soluzione non sembra così difficile.
_
, ha una riduzione per gli oggetti. Non sei sicuro che funzioni per caso o che il supporto agli oggetti fosse intenzionale, ma in effetti puoi passare un oggetto come nell'esempio di questa domanda, e lo farà (concettualmente) for..in
, chiamando la tua funzione iteratore con i valori trovati in ogni chiave.
Underscore.js
?