ホームページ >ウェブフロントエンド >jsチュートリアル >jQuery を使用して特定のプロパティごとに配列内のオブジェクトをグループ化して合計するにはどうすればよいですか?
配列内のオブジェクトのグループ化と合計
jQuery でオブジェクトの配列を特定のプロパティでグループ化し、別のプロパティを合計するには、次のようにします。次の手順を利用できます:
1.ループとリデュース:
$.each() 関数を使用して配列を反復処理し、オブジェクトごとに、同じグループ化プロパティを持つオブジェクトが結果の配列に既に存在するかどうかを確認します。そうでない場合は、グループ化プロパティと初期数量 0 を使用して新しいオブジェクトを作成します。このオブジェクトを結果配列に追加します。
2.プロパティの合計:
ループ内で、合計したいプロパティの値 (例: qty) を現在のオブジェクトから結果配列内の対応するオブジェクトに追加します。これにより、各グループの数量が効果的に累積されます。
jQuery を使用したサンプル コードを次に示します。
var array = [ { Id: "001", qty: 1 }, { Id: "002", qty: 2 }, { Id: "001", qty: 2 }, { Id: "003", qty: 4 } ]; var result = []; $.each(array, function(i, obj) { var idx = result.findIndex(x => x.Id === obj.Id); if (idx === -1) { result.push({ Id: obj.Id, qty: 0 }); idx = result.length - 1; } result[idx].qty += obj.qty; }); console.log(result);
このコードは、次の出力をログに記録します。
[ { Id: "001", qty: 3 }, { Id: "002", qty: 2 }, { Id: "003", qty: 4 } ]
これらの手順に従うことで、配列内のオブジェクトのプロパティを効果的にグループ化して合計することができ、データから貴重な洞察を抽出できるようになります。
以上がjQuery を使用して特定のプロパティごとに配列内のオブジェクトをグループ化して合計するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。