Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【JavaScript ECMAScript】Map::Map.prototype.forEachインスタンスメソッドの使い方

Map.prototype.forEach()インスタンスメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

Map.prototype.forEach()メソッドは、Mapオブジェクトに格納されている各要素(キーと値のペア)に対して、指定された関数を一度ずつ実行するメソッドです。

このメソッドは、Mapオブジェクトに要素が追加された順序で、それぞれの要素に対して繰り返し処理を行います。forEach()に渡す関数(コールバック関数と呼ばれます)は、現在処理している要素の「値」、「キー」、そしてforEach()が呼び出された「Mapオブジェクト自身」という3つの引数をこの順序で受け取ります。これにより、Map内の各要素のデータにアクセスし、必要な処理を実行することが可能です。

オプションでthisArgという引数を指定すると、コールバック関数内でのthisの値をその指定されたオブジェクトに設定できます。これは、コールバック関数内で特定のオブジェクトのプロパティやメソッドを利用したい場合に役立ちます。

Map.prototype.forEach()は、処理を終えるとundefinedを返します。このメソッドの主な用途は、Mapの全要素を巡回してデータの表示、集計、変換などの操作を行うことです。ただし、for...ofループとは異なり、途中で処理を中断する(例えばbreak文でループを抜ける)ことはできません。すべての要素に対してコールバック関数が実行されるまで処理が続行されます。

公式リファレンス: Map.prototype.forEach()

構文(syntax)

1const myMap = new Map();
2
3myMap.forEach((value, key, map) => { });

引数(parameters)

callbackFn, thisArg

  • callbackFn: Map の各要素に対して実行されるコールバック関数。以下の3つの引数を受け取ります。
    • value: 現在処理している要素の値
    • key: 現在処理している要素のキー
    • map: forEach() メソッドが呼び出された Map オブジェクト自身
  • thisArg: callbackFn が実行される際に this として使用される値。指定しない場合は undefined になります。

戻り値(return)

戻り値なし

戻り値はありません

関連コンテンツ