The forEach() method of the NodeList interface calls the callback given in parameter once for each value pair in the list, in insertion order.
forEach(callback)
forEach(callback, thisArg)callbackA function to execute on each element of someNodeList. It accepts 3 parameters:
currentValueThe current element being processed in someNodeList.
currentIndex OptionalThe index of the currentValue being processed in someNodeList.
listObj OptionalThe someNodeList that forEach() is being applied to.
thisArg OptionalValue to use as this when executing callback.
const node = document.createElement("div");
const kid1 = document.createElement("p");
const kid2 = document.createTextNode("hey");
const kid3 = document.createElement("span");
node.appendChild(kid1);
node.appendChild(kid2);
node.appendChild(kid3);
const list = node.childNodes;
list.forEach(function (currentValue, currentIndex, listObj) {
console.log(`${currentValue}, ${currentIndex}, ${this}`);
}, "myThisArg");The above code results in the following:
[object HTMLParagraphElement], 0, myThisArg [object Text], 1, myThisArg [object HTMLSpanElement], 2, myThisArg