JS事件循環機制
- 2020 年 9 月 14 日
- 筆記
JS事件循環機制總結
JS事件循環設計的原因
(1)JavaScript語言最大的一個特點就是單線程,也就是說,同一時間只能做一件事情,(非阻塞),執行代碼的時候只有一個主線程來處理所有任務;
(2)JavaScript的單線程與它的用途有關,JavaScript作為瀏覽器腳本語言,JavaScript主要用途是與用戶交互,以及DOM操作(JavaScript對DOM節點的操作包括訪問,創建,添加,刪除,替換,插入,複製,移動等),這就決定了JavaScript只能是單線程(如果是多線程的話,那麼可能出現在同一時間對一個DOM中的節點進行不同的操作的話,就會出現問題,問題就會變得很複雜)—HTML5允許JavaScript腳本創建多個線程,但是子線程完全受主線程的控制;
(3)
JS事件循環中術語概念
(1)執行棧
(2)任務隊列
(3)宏任務和微任務