【JS】async/await异常捕获,这样做才完美
在JavaScript中,使用async/await
时,为了确保异步操作中发生的异常能够被捕获,你应该使用try/catch
语句块。以下是一个使用async/await
并且正确捕获异常的例子:
async function fetchData() {
try {
const response = await fetch('https://api.example.com/data');
if (!response.ok) {
throw new Error('Network response was not ok');
}
return await response.json();
} catch (error) {
console.error('Error fetching data:', error);
// 这里可以处理错误,比如通知用户或者重试操作
throw error; // 可选:如果你想继续向上抛出异常
}
}
// 使用函数并捕获可能发生的异常
async function main() {
try {
const data = await fetchData();
console.log(data);
} catch (error) {
console.error('Error in main function:', error);
}
}
main();
在这个例子中,fetchData
函数是异步的,它使用try/catch
来捕获可能发生的异常。main
函数等待fetchData
完成,并使用另一个try/catch
来捕获任何可能在main
函数内发生的异常。这样,你就能确保异常能够被妥善处理,而不会导致程序崩溃。
评论已关闭