在JavaScript中,同步的意思是前一個任務結束後再執行後一個任務,程式執行順序與任務的排列順序是一致同步的,JS語言的一大特點是單線程,同一時間只能做一件事,意味著一件事結束以後才能進行下一件事。
本教學操作環境:windows10系統、javascript1.8.5版、Dell G3電腦。
javascript同步是什麼意思
S語言的一大特點是單線程,而同一時間只能做一件事。意味著一件事結束以後 才能進行下一件事。
HTML5提出Web Worker標準,讓JavaScript腳本建立多個執行緒。於是有了同步和異步。
同步:
前一個任務結束後再執行後一個任務,程式執行順序與任務的排列順序是一致的、同步的。
非同步:
在做一件事的同時可以處理其他事件。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>同步和异步</title> </head> <body> <script> console.log('第一条语句'); setTimeout(function(){ console.log('第二条语句'); },5000) console.log('第三条语句'); </script> </body> </html>
輸出結果時,先顯示第一條語句,再顯示第三條語句,等待5秒後顯示第二條語句。
同步和非同步的差異在於在管線上各個流程的執行順序不同
當定時器的時間為0的時候,會是什麼樣的列印順序呢?將上面程序的定時器時間改為0,執行程序,發現輸出順序並沒有改變。
JS將所有的任務分為兩大類,同步任務和非同步任務
同步任務放在主執行緒上執行,形成了一個執行堆疊;非同步都是透過回呼函數實現的。
常見的非同步任務有三類:
普通事件:如click、resize等。
資源加載,如load、error等。
計時器,包含setInterval、setTimeout等。
先執行執行堆疊中的同步任務,非同步任務放入任務佇列中,一旦執行堆疊中的多有同步任務執行完畢,系統就會依序讀取任務佇列中的非同步任務,於是被讀取的非同步任務結束等待狀態,進入執行堆疊。
相關推薦:javascript學習教學
以上是javascript同步是什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!