Access to ES6 array element index inside for-of loop

Abdennour TOUMI picture Abdennour TOUMI · Dec 18, 2015 · Viewed 165.8k times · Source

We can access array elements using a for-of loop:

for (const j of [1, 2, 3, 4, 5]) {
  console.log(j);
}

How can I modify this code to access the current index too? I want to achieve this using for-of syntax, neither forEach nor for-in.

Answer

Michał Perłakowski picture Michał Perłakowski · Dec 18, 2015

Use Array.prototype.keys:

for (const index of [1, 2, 3, 4, 5].keys()) {
  console.log(index);
}

If you want to access both the key and the value, you can use Array.prototype.entries() with destructuring:

for (const [index, value] of [1, 2, 3, 4, 5].entries()) {
  console.log(index, value);
}