当使用async和await时,如果函数返回一个promise,它将在异步操作完成之前被暂停。这意味着在await操作之后,它可能会返回pending状态。为了避免这种情况,需要使用try-catch语句来捕获异步操作的错误并处理它们。例如:
async function getData() {
try {
const response = await fetch('https://jsonplaceholder.typicode.com/todos/1');
const data = await response.json();
console.log(data);
} catch (error) {
console.log('Error occurred:', error);
}
}
getData();
在这个例子中,我们使用了try-catch语句来捕获fetch和response.json的错误,并在控制台输出它们。这确保了我们可以处理异步操作期间可能出现的任何错误,并避免async和await返回pending状态。