HTTP/2 200
x-guploader-uploadid: AAwnv3LIk0FoKEHCvqs7thPTH8-8B35daOvlZitfMoFXuCxVkpik0pMkg9ycqjowB5T0vRqL
x-goog-generation: 1760058303161741
x-goog-metageneration: 1
x-goog-stored-content-encoding: identity
x-goog-stored-content-length: 141332
x-goog-meta-goog-reserved-file-mtime: 1760056832
x-goog-hash: crc32c=q/reLw==, md5=aNodULmq5TeqUTl8VTIuiA==
x-goog-storage-class: STANDARD
accept-ranges: none
expires: Sat, 11 Oct 2025 06:58:48 GMT
cache-control: public, max-age=3600
last-modified: Fri, 10 Oct 2025 01:05:03 GMT
etag: W/"68da1d50b9aae537aa51397c55322e88"
content-type: text/html
age: 0
alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
alt-svc: clear
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
strict-transport-security: max-age=63072000
content-security-policy: default-src 'self'; script-src 'report-sample' 'self' 'wasm-unsafe-eval' https://www.google-analytics.com/analytics.js https://www.googletagmanager.com/gtag/js assets.codepen.io production-assets.codepen.io https://js.stripe.com 'sha256-XNBp89FG76amD8BqrJzyflxOF9PaWPqPqvJfKZPCv7M=' 'sha256-YCNoU9DNiinACbd8n6UPyB/8vj0kXvhkOni9/06SuYw=' 'sha256-PZjP7OR6mBEtnvXIZfCZ5PuOlxoDF1LDZL8aj8c42rw='; script-src-elem 'report-sample' 'self' 'wasm-unsafe-eval' https://www.google-analytics.com/analytics.js https://www.googletagmanager.com/gtag/js assets.codepen.io production-assets.codepen.io https://js.stripe.com 'sha256-XNBp89FG76amD8BqrJzyflxOF9PaWPqPqvJfKZPCv7M=' 'sha256-YCNoU9DNiinACbd8n6UPyB/8vj0kXvhkOni9/06SuYw=' 'sha256-PZjP7OR6mBEtnvXIZfCZ5PuOlxoDF1LDZL8aj8c42rw='; style-src 'report-sample' 'self' 'unsafe-inline'; object-src 'none'; base-uri 'self'; connect-src 'self' developer.allizom.org bcd.developer.allizom.org bcd.developer.mozilla.org updates.developer.allizom.org updates.developer.mozilla.org https://*.google-analytics.com https://*.analytics.google.com https://*.googletagmanager.com https://incoming.telemetry.mozilla.org https://observatory-api.mdn.allizom.net https://observatory-api.mdn.mozilla.net https://api.github.com/search/issues stats.g.doubleclick.net https://api.stripe.com; font-src 'self'; frame-src 'self' interactive-examples.mdn.mozilla.net interactive-examples.mdn.allizom.net mdn.github.io live-samples.mdn.mozilla.net live-samples.mdn.allizom.net *.mdnplay.dev *.mdnyalp.dev *.play.test.mdn.allizom.net https://v2.scrimba.com https://scrimba.com jsfiddle.net www.youtube-nocookie.com codepen.io survey.alchemer.com https://js.stripe.com; img-src 'self' data: *.githubusercontent.com *.googleusercontent.com *.gravatar.com mozillausercontent.com firefoxusercontent.com profile.stage.mozaws.net profile.accounts.firefox.com developer.mozilla.org mdn.dev interactive-examples.mdn.mozilla.net interactive-examples.mdn.allizom.net wikipedia.org upload.wikimedia.org https://mdn.github.io/shared-assets/ https://mdn.dev/ https://*.google-analytics.com https://*.googletagmanager.com www.gstatic.com; manifest-src 'self'; media-src 'self' archive.org videos.cdn.mozilla.net https://mdn.github.io/shared-assets/; child-src 'self'; worker-src 'self';
x-frame-options: DENY
origin-trial: AxVILwizhbMjxFeHOn1P3R8niO1RJY/smaK4B4d1rLzc1gTaxtXMSaTi+FoigYgCw40uFRDwFcEAeqDR+vVLOW4AAABfeyJvcmlnaW4iOiJodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZyIsImZlYXR1cmUiOiJQcml2YXRlQXR0cmlidXRpb25WMiIsImV4cGlyeSI6MTc0MjA3OTYwMH0=
x-cloud-trace-context: bd1b5751e4819d1f15ab17bc85c6fd8e
date: Sat, 11 Oct 2025 05:58:48 GMT
server: Google Frontend
via: 1.1 google
vary: Accept-Encoding
content-encoding: gzip
x-cache: miss
DOMTokenList: forEach() method - Web APIs | MDN
forEach(callback)
forEach(callback, thisArg)
callback
The function to execute for each element, eventually taking three arguments:
currentValue
The current element being processed in the array.
currentIndex
The index of the current element being processed in the array.
listObj
The array that forEach()
is being applied to.
thisArg
Optional
The value to use as this
when executing callback
.
In the following example we retrieve the list of classes set on a
<pre>
element as a DOMTokenList
using
Element.classList
. We when retrieve an iterator containing the values
using forEach()
, writing each one to the <pre>
's
Node.textContent
inside the forEach()
inner function.
<pre class="a b c"></pre>
const pre = document.querySelector("pre");
const classes = pre.classList;
const iterator = classes.values();
classes.forEach(function (value, key, listObj) {
pre.textContent += `(${value} ${key})/${this}\n`;
}, "arg");
This feature does not appear to be defined in any specification.>