JS: Array.prototype.forEach

By Xah Lee. Date: . Last updated: .
arrayX.forEach(f)
Apply function f to every element of the array arrayX. Return undefined. Original array is not changed.

The function f is passed 3 args:

  1. currentElement
  2. currentIndex
  3. arrayX
const x1 = [1, 2, 3];

const ff = ((x) => {
  console.log(x);
});

x1.forEach(ff);

// prints
// 1
// 2
// 3
arrayX.forEach(f, thisArg)
Use thisArg for this Binding of f. If it is not given, undefined is used.
// example of using forEach with a second argument

function ff(n) {
  // add a property key kn with value of n, to thisBinding object
  this["k" + n] = n;
  return n + 1;
}

// new object
const jj = {};

// array
const aa = [1, 2, 3];

// apply ff to each aa, using jj as thisBinding of ff
aa.forEach(ff, jj);

// jj is changed
console.log(JSON.stringify(jj) === `{"k1":1,"k2":2,"k3":3}`);

forEach with break

If you need to exit forEach when a condition is met, use “every” or “some”.

JavaScript, Loop, Iteration