我對Javascript中的定時器有點困惑。 我一直在玩定時器。關於Javascript中定時器的混淆問題
我對異步事件中的排隊過程如何發生困惑。 我已閱讀關於異步事件如何排隊的文章。 但是我發現很難繞過排隊過程。
下面的代碼:
http://jsbin.com/iwahuf/2/edit
在我已經發布將計時器按順序queud的代碼。事件隊列中的定時器不會執行FIFO(先入先出)。
以下是我在活動隊列中記住的內容。
- 第一定時器W/500ms的延遲
- 秒計時器W/600毫秒延遲
- 第三定時器W/300ms的延遲
- 四定時器W/400ms的延遲
在我看來,由於第一個計時器是第一個在事件隊列中註冊的計時器,它將是第一個被執行的計時器,並且只有在500毫秒後第二個計時器纔會被執行,依此類推。
請在這個問題上給我啓發。我是一個小混混。我認爲我對排隊過程的理解並不完全正確。
在此先感謝。
沒錯。沒有「定時器隊列」。如果你想這樣做,你需要自己實現。即註冊第一個計時器內的第二個計時器會添加它們。 –
感謝您的回覆。 我對你的陳述有些困惑,他們同時被執行。不是Javascript單線程,所以我認爲只有一個異步事件或計時器將被註冊在事件隊列中。 – chanHXC
@chanHXC很好,不完全是同一時間,但JS速度足夠快,所以感覺就像是同一時間。 –