async/await 是 JavaScript 中用于處理異步操作的關鍵字組合。
async 關鍵字用于聲明一個函數是異步函數,該函數內部可以包含 await 表達式。
await 表達式用于暫停異步函數的執行,等待 Promise 對象的解析結果,并將該結果返回。
在使用 async/await 時,可以將異步的操作看作是同步的操作,使得代碼更加易讀和簡潔。
例如:
async function getData() {
try {
const response = await fetch('https://api.example.com/data');
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error);
}
}
getData();
在上述代碼中,通過 async 關鍵字聲明了一個異步函數 getData(),在函數體內部使用 await 表達式暫停異步操作的執行,等待 Promise 對象的解析結果。
在這個例子中,首先使用 fetch 函數發送異步的網絡請求,并使用 await 表達式等待該請求的結果返回(即 Promise 對象的解析結果)。然后使用 await 表達式再次等待將響應數據解析為 JSON 格式。
使用 try-catch 塊可以捕獲可能出現的錯誤,并進行相應的處理。
最后,調用 getData() 函數啟動異步操作。