本篇內容主要講解“NodeJS中同步和異步編程是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“NodeJS中同步和異步編程是什么”吧!
您可能已經猜對了——Node 在 NodeJS 環境中使用事件循環處理請求。但首先,讓我們了解一些有助于我們理解整個機制的基本術語。
事件循環是一個事件監聽器,它在 NodeJS 環境中運行,并隨時準備監聽、處理和輸出事件。
事件可以是從鼠標單擊到按鍵或超時的任何事件。
同步編程意味著代碼按照它定義的順序運行。在同步程序中,當一個函數被調用并返回了某個值時,才會執行下一行。
讓我們用這個例子來理解:
const listItems = function(items) {
items.forEach(function(item) {
console.log(item)
})
}
const items = ["Buy milk", "Buy coffee"]
listItems(items)The output will look like this: "Buy milk" "Buy coffee"
在這個例子中,當listItems(items)函數被調用時,它將循環遍歷項目數組。console.log(item)首先為數組的第一項調用該函數并打印"Buy milk". 然后再次console.log(item)執行,這次它傳遞數組的第二項并打印"Buy coffee".
所以你可以說這個函數是按照它定義的順序執行的。
另一方面,異步編程指的是不按順序執行的代碼。這些功能不是按照它們在程序中定義的順序來執行的,而是僅在滿足某些條件時才執行的。
例如,setTimeOut()在某個預定義的毫秒數延遲后執行任務。
setTimeOut(function(){
return( console.log("Hello World!") )
}, 3000)這些函數不會逐行運行,而是僅在需要運行時才運行,而不管函數的聲明如何。在這種情況下,當所有同步功能都執行完畢后,該功能會在 3 秒后自動運行。
注意:異步函數只有在所有同步函數都執行完后才會運行和執行。在此之前,它們將在后臺處理。
如果想深入了解NodeJS和異步編程,可以參考這篇文章
但是,NodeJS 如何在后臺處理異步函數并先運行所有同步函數?所有這些機制都可以用 NodeJS 事件循環輕松解釋。
到此,相信大家對“NodeJS中同步和異步編程是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。