У меня есть функция, как это:Confused о Javascript таймаут
var a = function() {
setTimeout(function() {
alert(2);
}, 0);
alert(1);
}
a();
результат является предупреждение 1
первый, а затем оповещения 2
Но я думаю, что, хотя alert(2)
находится в setTimeout
, но он сразу же выполняет , Поскольку задержка равна 0
Почему именно alert(1)
выполнен первым?
См. Ответ Daniel Vandersluis http://stackoverflow.com/a/3580085/1317805 –
'setTimeout' имеют минимальную задержку по умолчанию, вы не можете это сделать 0 – vikas
Вы должны прочитать следующее: http: // ejohn. org/blog/how-javascript-timers-work/ –