Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
forEach() は Set インターフェイスのメソッドで、指定された関数をこの集合のそれぞれの値に対して一回ずつ、挿入順で実行します。
この集合のそれぞれの項目に対して実行する関数です。この関数は次の引数で呼び出されます。
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 オブジェクト内の各要素に対してログを出力します。
| ECMAScript® 2027 Language Specification # sec-set.prototype.foreach |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2025年8月18日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.