Сообщение от Devero97
|
Есть код:
|
И он неправильный, правильно так:
for(var i = 0; i <= 5; i++){
setTimeout(function() { console.log(i) }, i * 1000);
}
Сообщение от Devero97
|
А как тайм-аут запомнил, что там были числа 0,1 и т.д.?
|
Тайм-аут ничего не запоминает, запоминает функция, которая создана и передана ему аргументом
function() { console.log(i) }. Функции запоминают переменные окружения в месте своего создания, а не в месте своего вызова. Тайм-аут когда-то потом ее вызовет, но это уже не важно.