NodeList.forEach()

This article needs a technical review. How you can help.

The forEach() method of the NodeList interface calls the callback given in parameter once for each value pair in the list, in insertion order.

Syntax

nodeList.forEach(callback);
nodeList.forEach(callback, argument);

Parameters

callback
Function to execute for each element, eventually taking 4 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.
argument Optional
Value to use as this when executing callback.

Return value

undefined.

Exceptions

None.

Example

var node = document.createElement("div");
var kid1 = document.createElement("p");
var kid2 = document.createTextNode("hey");
var kid3 = document.createElement("span");

node.appendChild(kid1);
node.appendChild(kid2);
node.appendChild(kid3);

var list = node.childNodes;

list.forEach( 
  function(value, key, listObj, argument) { 
    console.log(value + ' ' + key + "/" + this); 
  },
  "arg"
);

results in:

[object HTMLParagraphElement] 0/arg
[object Text] 1/arg
[object HTMLSpanElement] 2/arg

Specifications

Specification Status Comment
DOM
The definition of 'entries() (as iterable<Node>)' in that specification.
Living Standard Initial definition.

Browser Compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support (Yes) 50 (50) No support (Yes) No support
Feature Android Android Webview Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile Chrome for Android
Basic support No support (Yes) 50.0 (50) ? (Yes) ? (Yes)

See also

Document Tags and Contributors

 Contributors to this page: jrencz, chrisbruford, teoli
 Last updated by: jrencz,