await和async 失败返回
时间: 2024-09-19 18:05:45 浏览: 31
Promise Async+await实现原理及案例分析
在JavaScript中,`await` 和 `async` 关键字通常与异步函数一起使用,它们是处理Promise的一种更直观的方式。`async` 函数会自动返回一个Promise,而 `await` 则用于等待Promise解析完成。
当 `await` 后面的Promise失败(即被 reject),它会立即停止当前的 async 函数,并抛出一个错误。这个错误可以被捕获并通过 `try...catch` 或 `.catch()` 方法处理。例如:
```javascript
async function fetchData() {
try {
const response = await fetch('https://api.example.com/data');
if (!response.ok) {
throw new Error(`Error: ${response.status}`);
}
// 成功处理数据
} catch (error) {
console.error('Fetch failed:', error);
}
}
```
在这个例子中,如果网络请求失败(比如HTTP状态码不是200),`fetch` Promise会被拒绝并触发 `catch` 子句,将错误信息记录到控制台。
阅读全文