プログラミング フロントエンド バックエンド

【Javascript】オブジェクトの配列をグループ別に集約したい

スポンサーリンク

こんにちは!

今回は「Javascriptで、オブジェクトの配列をグループ別に集約する方法」についてお伝えしたいと思います。

オブジェクトの配列をグループ別にまとめて、簡単に取り出すことができます。

オブジェクトの配列をグループ別に集約する方法

実際に具体例を元に説明します。
例はgroup番号を持った配列から、オブジェクトに変換します。
group番号をkeyに設定し、valueにはデータを配列で追加しました。

const duplicateObj = {};
const dataArr = [
  {userId: 100, group: 1, name: '太郎'},
  {userId: 101, group: 2, name: '花子'},
  {userId: 103, group: 1, name: 'りゅう'},
]
for (const data of dataArr) {
  if (!duplicateObj[data.group]) {
      duplicateObj[data.group] = [data];
  } else {
		duplicateObj[data.group].push(data);
  }
}

for (const key of Object.keys(duplicateObj)) {
	// グループ毎の処理などを実施
  console.log(duplicateObj[key]);
  // 出力
  // [
  //   { userId: 100, group: 1, name: '太郎' },
  //   { userId: 103, group: 1, name: 'りゅう' }
  // ]
  // [ { userId: 101, group: 2, name: '花子' } ]
}

何かお役に立てれば幸いです。

以上、お疲れさまでした〜🍵

スポンサーリンク

-プログラミング, フロントエンド, バックエンド
-

© 2022 エンジニア×ライフハック Powered by AFFINGER5