首頁 > web前端 > js教程 > 如何在 JavaScript 中按鍵對物件陣列進行分組和求和?

如何在 JavaScript 中按鍵對物件陣列進行分組和求和?

Susan Sarandon
發布: 2024-11-23 03:33:22
原創
630 人瀏覽過

How to Group and Sum an Array of Objects by a Key in JavaScript?

按鍵將物件陣列進行分組和求和

在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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板