JavaScript «для (var i = 0;…) {…}» несовместимости браузеров?

Я давно не занимался серьезным программированием на JavaScript и пишу вводное руководство по языку для некоторых из моих коллег. Я хотел бы обсудить передовые методы работы с циклами, но есть одна небольшая деталь, которую я оставил в голове:

При циклическом обходе массивов я помню, что следующий шаблон небезопасно использовать, потому что существуют основные браузеры которые его не поддерживают:

for (var i = 0; i < ls.length; i++) { ... }

Вместо этого ключевое слово var должно быть перемещено из массива, как таковое:

var i;
for (i = 0; i < ls.length; i++) { ... }

Это правильно? Я рыскал по сети и не могу этого подтвердить. Некоторые старые браузеры не поддерживают первый метод? Если нет, то какие?

7
задан thebossman 13 February 2012 в 19:32
поделиться