【Node.js24.x】Map::groupBy()メソッドの使い方
groupByメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
groupByメソッドは、与えられたイテラブルなコレクション(配列など)の要素を、指定された条件に基づいてグループ化し、新しいMapオブジェクトとして返す静的なメソッドです。このメソッドは、Mapクラスに属しており、主にデータの効率的な整理や集計を行う際に利用されます。
メソッドは引数として、グループ化したい要素を含むイテラブルなオブジェクトと、各要素からグループのキーを生成するためのコールバック関数を受け取ります。このコールバック関数は、イテラブルなオブジェクトの各要素に対して実行され、その要素がどのグループに属するかを示すキーを返します。返されるキーは、文字列、数値、シンボルなど、Mapのキーとして有効な任意のデータ型です。
groupByメソッドの戻り値は、新しく生成されたMapオブジェクトです。このMapの各エントリは、コールバック関数が返したキーとそのキーに対応する元のコレクションの要素をすべて含んだ配列を値として保持します。つまり、Mapは[キー, [グループに属する要素1, グループに属する要素2, ...]]という形式で構成されます。例えば、ユーザーのリストを地域や年齢によって分類したい場合などに、このメソッドを活用することで、データを分かりやすく構造化し、後の処理で利用しやすくなります。この便利な機能は、Node.jsのバージョン24から導入されました。
構文(syntax)
const array = [{ id: 1, type: 'A' }, { id: 2, type: 'B' }, { id: 3, type: 'A' }];
const groupedMap = Map.groupBy(array, (element, index) => {
return element.type;
});
引数(parameters)
引数なし
引数はありません
戻り値(return)
Map
指定された条件に基づいて、Node.js 24のMap.groupByメソッドの戻り値の説明を生成します。
Map.groupByメソッドは、元のMapの各要素を、指定されたコールバック関数によって生成されたキーでグループ化し、その結果を新しいMapとして返します。