ホームページ > 記事 > ウェブフロントエンド > JavaScript でオブジェクトの配列をキーごとにグループ化して合計する方法
キーによるオブジェクトの配列のグループ化と合計
JavaScript では、特定のキーと合計によってオブジェクトの配列をグループ化できます。 jQuery の強力なツールを使用して、そのキーに関連付けられた値を取得します。これを実現する方法は次のとおりです。
var array = [ { Id: '001', qty: 1 }, { Id: '002', qty: 2 }, { Id: '001', qty: 2 }, { Id: '003', qty: 4 } ];
ループと合計
効果的な方法の 1 つは、配列を反復処理し、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 中国語 Web サイトの他の関連記事を参照してください。