Я читал Object-Oriented Javascript Стояна Стефанова, и в какой-то момент он пишет:
Цикл
for-in
используется для перебора элемента массива (или объекта, как мы увидим позже). Это единственное использование; его нельзя использовать в качестве универсального механизма повторения, заменяющегоfor
илиwhile
. Давайте посмотрим на пример использованияfor-in
для перебора элементов массива. Но имейте в виду, что это только для информационных целей, так какfor-in
в основном подходит для объектов, а обычный циклfor
следует использовать для массивов.
В прошлом я всегда использовал циклы for
при переборе элементов массива, и я обычно видел циклы for
, а не циклы for-in
, используемые для этой цели, но по какой причине «обычный цикл for
следует использовать для массивов»?