前端面試基礎 js執行機制

2021-10-01 10:47:13 字數 568 閱讀 3619

1.理解js單執行緒的概念

單執行緒就是同一時間只能幹一件事。

2.理解任務佇列

任務分為同步任務與非同步任務

同步任務:在主線程上排隊執行的任務,只有前乙個任務執行完畢,才能執行後乙個任務。

非同步任務:不進入主線程、而進入任務佇列的任務,只有 "任務佇列"通知主線程,某個非同步任務可以執行了,該任務才會進入主線程執行。

3.理解event loop

及事件迴圈,當主程序中的同步任務執行完畢之後,就會去看任務佇列中是否有可執行的任務。如有就把其放入主程序中。如此迴圈往復。

4.理解哪些語句會放入非同步任務佇列中

settimeout和setinterval

dom事件

es6中的promise

5.理解語句放入非同步任務佇列的時機

假設settimeout設定的事件是1000毫秒,則會在1000毫秒後,把裡面的函式(call back)放在非同步任務佇列中,等待進入主線程。

前端 JS執行機制

1 js是 1 單執行緒 2 任務佇列 同步任務 非同步任務 先掛載 單執行緒就意味著所有任務需要排隊,前乙個任務結束,才會執行下乙個任務。js從上到下執行,遇到非同步任務先掛起,繼續執行同步任務,同步任務執行完畢再處理非同步任務。優先執行同步任務,再執行非同步任務 如 for var i 0 i ...

面試 JS執行機制

參考 這篇文章的總結 因為js有同步任務和非同步任務,就造成了js多執行緒的假象,但是js是一門單執行緒語言!js的執行機制是根據事件迴圈的順序。因為js有同步任務和非同步任務,為了了解執行機制,將任務細分為巨集任務和微任務。巨集任務和微任務還包括其他的,這裡不贅述 事件迴圈的順序就是 進入整體 巨...

JS執行機制

js是單執行緒的,settimeout和setinterval是非同步任務,要掛起,不先執行,等同步任務完成之後,再去處理非同步任務 console.log 1 settimeout function 0 console.log 3 console.log 4 輸出 1 3 4 2console.l...