JavaScript|異步編程

2021-8-17    前端達人

JavaScript|異步編程

1.異步的概念

**異步(Asynchronous, async)是與同步(Synchronous, sync)**相對的概念。在我們學習的傳統(tǒng)單線程編程中,程序的運行是同步的(步驟在一個控制流序列中按順序執(zhí)行)。而異步的概念則是不保證同步的概念,也就是說,一個異步過程的執(zhí)行將不再與原有的序列有順序關系。簡單來理解就是:同步按你的代碼順序執(zhí)行,異步不按照代碼順序執(zhí)行,異步的執(zhí)行效率更高。異步就是從主線程發(fā)射一個子線程來完成任務。

2.回調(diào)函數(shù)

回調(diào)函數(shù)就是一個函數(shù),它是在我們啟動一個異步任務的時候就告訴它:等你完成了這個任務之后要干什么。這樣一來主線程幾乎不用關心異步任務的狀態(tài)了。

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>異步編程</title> </head> <body> <p>等待4秒過后執(zhí)行</p> <p id="p2">太陽</p> <p id="p3">月亮</p> <script> // 回調(diào)函數(shù) function sayHello(){ document.getElementById("p2").innerHTML = "Hello!Sun"; } // 使用setTimeout()可以設置sayHello為一個4秒的過程,第一個參數(shù)是回調(diào)函數(shù),第二個參數(shù)是毫秒數(shù) setTimeout(sayHello,4000); </script> </body> </html> 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

在這里插入圖片描述

等待四秒過后:

在這里插入圖片描述

主線程并未停止,body中的內(nèi)容正常運行,而當4秒回調(diào)過后,子函數(shù)運行結果就改變了h2的值。




藍藍設計建立了UI設計分享群,每天會分享國內(nèi)外的一些優(yōu)秀設計,如果有興趣的話,可以進入一起成長學習,請掃碼ben_lanlan,報下信息,會請您入群。歡迎您加入噢~~希望得到建議咨詢、商務合作,也請與我們聯(lián)系。

文章來源:csdn

分享此文一切功德,皆悉回向給文章原作者及眾讀者.
免責聲明:藍藍設計尊重原作者,文章的版權歸原作者。如涉及版權問題,請及時與我們?nèi)〉寐?lián)系,我們立即更正或刪除。

藍藍設計bouu.cn )是一家專注而深入的界面設計公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網(wǎng)站建設 、平面設計服務


分享本文至:

日歷

鏈接

個人資料

藍藍設計的小編 http://bouu.cn

存檔