У меня есть пара вопросов о цикле javascript for.javascript for loop неожиданное поведение
Первый вопрос:
for (i=0; i<=2; i++) {;}
console.log(i);
Вывод 3. Если не было бы 2?
Второй вопрос:
for (var i=0; i<=2; i++) {
setTimeout(function(){console.log(i);}, i*1000);
}
Таймауты установлены правильно: 0, 1000 и 2000. Но выход 3,3,3 (должен быть 0, 1, 2). Означает ли это, что выполняются функции с задержкой после выход петли? Зачем?
Что я должен читать, чтобы понять все эти загадочные вещи в JavaScript?
спасибо.
+1 Я ищу для этого тоже) – naiad