JavaScript と Lodash を使用したキーによるオブジェクトのグループ化
特定のキーに基づいてオブジェクトをグループ化することは、データの配列を操作する場合の一般的なタスクです。共通のプロパティを共有するオブジェクトをグループ化することで、より効果的にオブジェクトを整理してアクセスできるようになります。
プレーンな JavaScript でこれを実現する 1 つの方法は、Array#reduce メソッドを使用することです。次のコード スニペットは、その方法を示しています。
const cars = [{ make: 'audi', model: 'r8', year: '2012' }, { make: 'audi', model: 'rs5', year: '2013' }, { make: 'ford', model: 'mustang', year: '2012' }, { make: 'ford', model: 'fusion', year: '2015' }, { make: 'kia', model: 'optima', year: '2012' }]; const result = cars.reduce(function (r, a) { r[a.make] = r[a.make] || []; r[a.make].push(a); return r; }, {}); console.log(result);
このコードは、グループ化キーとして make プロパティを使用します。車の配列を反復処理し、一意の make 値に対応するキーを持つ新しいオブジェクトを作成します。各メーカーに対して、そのメーカーを共有する車オブジェクトの配列を作成または追加します。
Lodash は、_.groupBy 関数を使用してオブジェクトをグループ化する簡潔な方法も提供します。
import { groupBy } from 'lodash'; const grouped = groupBy(cars, 'make');
The groupByこの関数は、オブジェクトの配列とグループ化の基準となるプロパティという 2 つの引数を取ります。これは、指定されたプロパティの一意の値に対応するキーと、その値を共有するオブジェクトの配列に対応する値を持つ新しいオブジェクトを返します。
オブジェクトをキーでグループ化することで、関連するデータに簡単にアクセスし、操作を実行できます。類似した特性を持つオブジェクトのグループ。この手法は、データの取得、フィルタリング、データの視覚化の最適化に特に役立ちます。
以上がLodash または Plain JavaScript を使用して JavaScript オブジェクトをキーごとに効率的にグループ化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。