js執行機制

2022-03-22 04:07:08 字數 522 閱讀 9375

說到js的執行機制,那麼就要先從幾個名詞開始,這是為了讓更多的人能看懂。

如下:程序和執行緒:

程序:程序是正在執行的程式的例項。程式關於資料集合上的一次執行活動,是系統進行資源分配和排程的基本單位;

程序有三個基本的狀態:

執行緒:有時被稱為輕量級程序(lightweight process,lwp),是程式執行流的最小單元,乙個程序有多個執行緒。

那麼我們的js執行是單執行緒的,什麼叫單執行緒?

這裡的單執行緒,是指js在執行時只在一條執行緒上執行,而且同時只執行乙個任務,那麼就需要把執行的任務加入佇列中,前面的執行完畢以後再執行後面的,

那麼我們的瀏覽器又是多執行緒的。多執行緒呢就是同時可以執行多個任務。單執行緒和多執行緒類似於同步和非同步,但是它們又不是同乙個東西,這個區別在下篇部落格中我會詳細說明。

總結:本篇部落格我們需要了解js的執行機制,以及執行緒,程序,單執行緒,多執行緒的意思。

JS執行機制

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

JS執行機制

輸出結果為 1,2,3 js是從上到下執行的 js是單執行緒的,即在同一時間只能做一件事情 遇到同步程式,直接執行 遇到非同步程式,先掛起,等同步程式執行完畢後再執行 同步佇列 優先順序最高 非同步佇列 遇到非同步佇列先掛起,等同步佇列執行完後,再選擇執行非同步佇列的某個 settimeout中的時...

JS執行機制

js單執行緒 在同一時間js只能做一件事。為什麼是單執行緒?如果多執行緒,同時操作乙個dom會出問題。非阻塞 event loop 事件迴圈 任務佇列 同步任務佇列要優先於非同步任務佇列處理。非同步任務被分為巨集任務和微任務。常見的非同步任務分類如下 巨集任務 定時器系列,dom事件 ui互動事件 ...