非同步程式設計對於 JavaScript 中處理檔案讀取、網路請求和計時器等操作至關重要,否則這些操作會阻止程式的執行。了解如何使用非同步程式碼對於建立高效、非阻塞的 Web 應用程式至關重要。
什麼是非同步程式設計?
在同步編程中,每個操作都是依序執行的。但是,非同步程式允許某些操作(例如從 API 取得資料)獨立於主程式流程運行,讓其他任務在等待操作完成時執行。
回呼
回呼是作為參數傳遞給另一個函數的函數,它在任務完成後執行。例如,在事件處理或 setTimeout 函數中,您會傳遞一個在操作完成時執行的回呼。
setTimeout(() => { console.log("This runs after 2 seconds"); }, 2000);
promise 可以處於三種狀態之一:pending、resolved(fulfilled)或rejected。可以使用 .then() 和 .catch() 連結 Promise 來處理結果和錯誤。
let promise = new Promise((resolve, reject) => { let success = true; success ? resolve("Data fetched successfully!") : reject("Fetch failed"); }); promise .then(result => console.log(result)) .catch(error => console.log(error));
async function fetchData() { try { let response = await fetch("https://api.example.com"); let data = await response.json(); console.log(data); } catch (error) { console.error(error); } }
結論
掌握 JavaScript 非同步程式設計是建立高效應用程式的關鍵。透過瞭解回呼、promise 和 async/await,您可以處理 API 呼叫和後台程序等複雜任務,而不會阻塞主執行緒。
以上是JavaScript 基礎:深入探討非同步編程的詳細內容。更多資訊請關注PHP中文網其他相關文章!