【JavaScript ECMAScript】Set::Set.prototype.forEachインスタンスメソッドの使い方
Set.prototype.forEach()インスタンスメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
Set.prototype.forEach()メソッドは、Setオブジェクトに格納されている各要素に対して、指定されたコールバック関数を一度ずつ実行するメソッドです。このメソッドは、Setオブジェクト内のすべての要素を、それらが追加された順序で走査し、それぞれの要素に対してユーザーが定義した処理を適用したい場合に利用されます。
このメソッドは、引数としてコールバック関数を受け取ります。コールバック関数は、Setの各要素ごとに3つの引数を受け取ります。これらは、現在の要素の値 (value)、現在の要素のキー (key)、そしてforEach()が呼び出されたSetオブジェクト自身 (set) です。Setオブジェクトはキーを持たないコレクションですが、Map.prototype.forEach()との互換性を保つために、valueとkeyは常に同じ値になります。
また、オプションとして二つ目の引数にthisArgを指定できます。これは、コールバック関数が実行される際にthisとして参照される値を設定するもので、コールバック関数内で特定のコンテキストを使用したい場合に役立ちます。thisArgが指定されない場合、thisの値はグローバルオブジェクトなど、実行環境によって変わります。
Setオブジェクトは重複しない値のコレクションであるため、forEach()は同じ要素に対して複数回処理を実行することはありません。このメソッドはSetオブジェクト自体を変更せず、戻り値は常にundefinedです。これにより、Setの要素を安全に反復処理し、それぞれの要素に対して必要な操作を実行できます。
構文(syntax)
1const mySet = new Set(['apple', 'banana', 'cherry']); 2 3mySet.forEach((value, key, set) => { 4 console.log(`Current value: ${value}, Key (same as value): ${key}, Full Set:`, set); 5});
引数(parameters)
callbackFn, thisArg
- callbackFn: Set の各要素に対して実行されるコールバック関数。引数として current_value, key, set を受け取ります。
- thisArg: callbackFn を実行する際の this として使用される値。
戻り値(return)
undefined
Set.prototype.forEach() メソッドは、Set オブジェクトの各要素に対して、指定されたコールバック関数を実行するために使用されます。このメソッドは、処理が完了しても具体的な値を返しません。
戻り値はありません。