ho una matrice con un numero di oggetti con i tasti corrispondenti:Aggiungere valori delle chiavi corrispondenti in array di oggetti
[{a: 2, b: 5, c: 6}, {a:3, b: 4, d:1},{a: 1, d: 2}]
voglio scorrere l'array e se le chiavi corrispondono voglio aggiungere i risultati di ciascuno e restituire un oggetto con la somma di ciascuna chiave.
cioè
{a: 6, b: 9, c: 6, d: 3}
Il codice ho attualmente è
function combine() {
var answer = [];
for(var i in arguments){
answer.push(arguments[i])
}
answer.reduce(function(o) {
for (var p in o)
answer[p] = (p in answer ? answer[p] : 0) + o[p];
return answer;
}, {});
}
riesco a trovare la risposta here se dovessi utilizzare la libreria di sottolineatura, però vorrei farlo senza l'utilizzo di una libreria . Penso di avere difficoltà a capire come funziona il metodo reduce
- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce
Qualsiasi aiuto su come risolvere questo problema sarebbe molto apprezzato. Inoltre, penso che sia una risposta che dovrebbe essere da qualche parte su SO senza dover usare una libreria.
Grazie in anticipo.
citano anche l'uscita si stanno ottenendo rn. –