async await的返回值
时间: 2024-08-07 11:01:20 浏览: 61
`async` 和 `await` 是 JavaScript 中用于处理异步操作的关键特性,它们通常与 Promise 结合使用。`async` 关键字用于声明一个函数为异步函数,而 `await` 关键字则用于暂停当前函数的执行,直到等待某个异步操作的结果。
当在一个 `async` 函数中遇到 `await` 关键字时,它会暂停该行后面的代码执行,然后立即返回一个 Promise 对象。这个 Promise 对象代表了先前异步操作的结果。一旦异步操作完成,Promise 将解析(如果成功)或拒绝(如果失败),并控制权将回到 `await` 语句的位置,继续执行接下来的代码。
举个例子:
```javascript
async function fetchData() {
try {
const response = await fetch('https://api.example.com/data');
if (response.ok) {
const data = await response.json();
return data;
} else {
throw new Error('Failed to fetch data');
}
} catch (error) {
console.error(error);
}
}
fetchData().then(data => console.log(data)).catch(err => console.error(err));
```
在这个例子中,`fetchData()` 函数通过 `await` 等待 `fetch` 和 `response.json()` 的结果,并返回最终获取的数据。如果你试图直接从 `await` 语句后面获取返回值,JavaScript 会抛出错误,因为这不是正确的语法。
阅读全文