2015-10-18 3 views
0

Предположим, что я хочу пропустить весь массив для доступа к каждому элементу. Является ли стандартной практикой среди разработчиков JavaScript использовать цикл for, for ... in loop или for ... of loop?Стандартная практика JavaScript для итерации по всему массиву?

Например:

var myArray = ["apples", "oranges", "pears"]; 

Для петли

for (var index = 0; index < myArray.length; index++) 
    console.log(myArray[index]); 

Для ... в петле

for (var index in myArray) 
    console.log(myArray[index]); 

Для ... петли

for (var element of myArray) 
    console.log(element); 
+1

что относительно 'forEach'? – scniro

+0

Кроме того, вы можете выполнить команду 'var i = -1; while (myArray [++ i]) { console.log (myArray [i]) } ' –

+0

Возможный дубликат [Loop through array в JavaScript] (http://stackoverflow.com/questions/3010840/loop-through -array-в-JavaScript) –

ответ

1

forEach должен быть способ перехода, как часть функций Array.prototype.

Для цикла

for (var index = 0; index < myArray.length; index++) 
    console.log(myArray[index]) 

Если бы я должен был выбрать одну из представленных выше, ванили для-петли с длиной выше, является наиболее предпочтительным.

Для ... в цикле

for (var index in myArray) 
    console.log(myArray[index]); 

Вы должны избегать этого любой ценой! Неплохая практика смешения идиом, предназначенных для объекта с массивом. Вы можете запустить на итерацию багги через нежелательных элементы

1

Для цикла

for (var index = 0; index < myArray.length; index++) 
console.log(myArray[index]); 

Это лучший выбор для массива, и броузеры! Это позволит разорвать цикл, когда вы хотите, но не с Array.forEach

Для в

Избегайте этого подхода с массивом!

Смежные вопросы