Heim > Artikel > Web-Frontend > Wie gruppiere und summiere ich ein Array von Objekten nach einem Schlüssel in JavaScript?
Gruppieren und Summieren eines Arrays von Objekten nach einem Schlüssel
In JavaScript können Sie ein Array von Objekten nach einem bestimmten Schlüssel und einer bestimmten Summe gruppieren die diesem Schlüssel zugeordneten Werte mithilfe der leistungsstarken Tools von jQuery. So können Sie dies erreichen:
var array = [ { Id: '001', qty: 1 }, { Id: '002', qty: 2 }, { Id: '001', qty: 2 }, { Id: '003', qty: 4 } ];
Schleife und Summierung
Eine effektive Methode besteht darin, das Array zu durchlaufen und die Werte mithilfe der Methode „reduce()“ zu akkumulieren . Diese Methode verwendet eine Rückruffunktion, die das Array auf einen einzelnen Wert reduziert, in diesem Fall ein Objekt, das die gruppierten Werte darstellt.
var result = []; array.reduce(function (res, value) { if (!res[value.Id]) { res[value.Id] = { Id: value.Id, qty: 0 }; result.push(res[value.Id]); } res[value.Id].qty += value.qty; return res; }, {});
Ausgabe:
[ { Id: '001', qty: 3 }, { Id: '002', qty: 2 }, { Id: '003', qty: 4 } ]
Diese Lösung gruppiert die Objekte effizient nach dem Id-Schlüssel und summiert die entsprechenden Mengenwerte, was zu einem Array von Objekten mit gruppierten und summierten Werten führt.
Das obige ist der detaillierte Inhalt vonWie gruppiere und summiere ich ein Array von Objekten nach einem Schlüssel in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!