Итерация массива ES5 - ES6 | ES5-ES6 array iteration

В ES5 массив можно итерировать тремя способами:

let xmen = ['Cyclops', 'Wolverine', 'Rogue'];

console.info('for');
for(let index = 0; index < xmen.length; index++){
	console.log(xmen[index]);
}

console.info('for...in');
for (let key in xmen){
	console.log(xmen[key]);
}

console.info('forEach');
xmen.forEach(xman => console.log(xman));

В ES6 добавлен новый спосб for...of. А for..of в первую очередь предназначен для получения значений.

console.info('for...of');
for (let item of array){
 console.log(item);
}

Итерация объекта

Ещё одно различие заключается в том, что for..in может использоваться для обхода любого объекта, являясь средством инспектирования его свойств.

for (let key in obj) {
  /* ... делать что-то с obj[key] ... */
}