按鍵將物件陣列進行分組和求和
在JavaScript 中,您可以按特定鍵和總和對物件陣列進行分組使用jQuery 強大的工具與該鍵關聯的值。以下是實現此目的的方法:
var array = [ { Id: '001', qty: 1 }, { Id: '002', qty: 2 }, { Id: '001', qty: 2 }, { Id: '003', qty: 4 } ];
循環和求和
一種有效的方法是迭代數組並使用 reduce() 方法累積值。此方法採用回呼函數,將陣列簡化為單一值,在本例中為表示分組值的物件。
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; }, {});
輸出:
[ { Id: '001', qty: 3 }, { Id: '002', qty: 2 }, { Id: '003', qty: 4 } ]
此解決方案透過Id 鍵有效地將物件分組,並對對應的數量值進行求和,從而得到一個經過分組和求和的物件陣列價值觀。
以上是如何在 JavaScript 中按鍵對物件陣列進行分組和求和?的詳細內容。更多資訊請關注PHP中文網其他相關文章!