2012-02-07 87 views
2

我一直在改變我的網站上的JavaScript如何工作,以使其更具響應性。我添加了這樣的行:超時時間總是足夠長嗎?

setTimeout(function() {doTasks();}, 0); 

是否總是有足夠的超時0?有沒有什麼瀏覽器,這個伎倆不起作用?

+0

這是幹什麼的? – 2012-02-07 11:16:07

+0

我不確定這個技巧首先實現了什麼? – 2012-02-07 11:16:09

+0

我認爲這應該是在後臺執行任務。 – 2012-02-07 11:17:05

回答

4

是的,這適用於每個瀏覽器。

但請注意,實際的延遲將在10毫秒左右。

對於那些不明白的人。這將清空調用堆棧,因爲回調函數將被異步調用。此外,它還爲程序提供了一些時間來「呼吸」,並執行其他事件或更新UI。