setTimeout не делает задержки - где ошибка ???
Вот строка:
var scale = 2.5; for (var i = 1; i <= scale; i+=0.2){ setTimeout(window.alert(Math.round(i*5000)) , Math.round(i*5000) ); } Цикл выполняется фактически мгновенно и никаких секундных задержек нет, а по идее должно начать выполняться неторопясь и начиная с пятой секунды после запуска. Что я делаю нетак ??? |
Метод setTimeout вызывает функцию или вычисляет выражение после определенного количества миллисекунд. (alert
Цитата:
var scale = 2.5;
for(var i = 1; i <= scale; i += 0.2) {
setTimeout(function() {
alert(Math.round(i*5000));
}, Math.round(i*5000));
}
|
var scale = 2.5;
for (var i = 1; i <= scale; i+=0.2){
setTimeout((function(i){return function(){alert(Math.round(i*5000))}}(i)), Math.round(i*5000))
}
|
| Часовой пояс GMT +3, время: 22:37. |