Bu, zaman aşımına uğradığında ve çalıştığı zamanın zaman farkından (milisaniye cinsinden) farklıdır.
alert(setTimeout(function(a) { alert(a) }, 2000));
zamanında ilk uyarısı temizlerseniz, bir sonraki uyarı yerlerdedir -10 10'a sen, 2000 eksi bekledi süre etrafında bir şey göreceksiniz birkaç saniye bekleyin göreceksiniz.
SetInterval için de aynı şey görülebilir. Firebug'da aşağıdakileri çalıştırın:
Uyarıyı hızla kapatmayı deneyin, tekrar 0 civarında olacaktır. Açık bırakın - size büyük bir değer verecektir. Javascript işlenmesini ortadan kaldıracak açık bir uyarı tutarak, bu yüzden uyarı kapatana kadar zamanlayıcı yürütmüyor burada Firefox Mac üzerindedir
Not. Yukarıdaki testlerin davranışı, diğer tarayıcılarda farklı olabilir
Harika soru! Bunu daha önce denemeyi hiç düşünmemiştim. – Nicole