A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Set/forEach below:

Set.prototype.forEach() - JavaScript | MDN

Set.prototype.forEach()

Baseline Widely available

forEach() は Set インターフェイスのメソッドで、指定された関数をこの集合のそれぞれの値に対して一回ずつ、挿入順で実行します。

試してみましょう
function logSetElements(value1, value2, set) {
  console.log(`s[${value1}] = ${value2}`);
}

new Set(["foo", "bar", undefined]).forEach(logSetElements);

// Expected output: "s[foo] = foo"
// Expected output: "s[bar] = bar"
// Expected output: "s[undefined] = undefined"
構文
forEach(callbackFn)
forEach(callbackFn, thisArg)
引数
callback

この集合のそれぞれの項目に対して実行する関数です。この関数は次の引数で呼び出されます。

value

それぞれの反復処理の値です。

key

それぞれの反復処理のキーです。これは常に value と同じです。

set

反復処理が行われる集合です。

thisArg 省略可

callbackFn を実行するときn、this として使用する値です。

返値

undefined です。

解説

forEach() メソッドは、この Set オブジェクトに実際に存在するそれぞれの値に対して、指定された callback を一回ずつ実行します。削除された値に対しては呼び出しません。ただし、undefined の値をもつ要素に対しては実行します。

callback は 3 つの引数で呼び出されます。

しかし、 Set オブジェクトにキーがないので、最初の 2 つの引数は、両方とも Set に含まれる値です。これにより、他の Map や Array の forEach() メソッドと整合が取れています。

thisArg 引数が forEach() に渡された場合、 callback を呼び出すときにこれが渡され、 this 値として使用されます。渡されなかった場合は、さもなければ、this 値として使用するために undefined 値が渡されます。 this の値が最終的に callback から見える姿は、関数から見た this を決定するための通常のルールに応じて決まります。

それぞれの値は 1 回ずつ処理されますが、 forEach() が終了する前に削除・再追加された場合は例外です。処理される前に削除された値に対しては callback は実行されません。 forEach() が終了する前に追加された新しい値は処理されます。

forEach() は callback 関数を Set オブジェクト内のそれぞれの要素に対して一回ずつ実行します。返値はありません。

例 Set オブジェクトの内容を出力する

次のコードでは、Set オブジェクト内の各要素に対してログを出力します。

function logSetElements(value1, value2, set) {
  console.log(`s[${value1}] = ${value2}`);
}

new Set(["foo", "bar", undefined]).forEach(logSetElements);

// Logs:
// "s[foo] = foo"
// "s[bar] = bar"
// "s[undefined] = undefined"
仕様書 ブラウザーの互換性 関連情報

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4