请简述async await
时间: 2023-08-14 10:11:48 浏览: 160
解答“60k”大佬的19道C#面试题(上)
async/await 是 JavaScript 中用于处理异步操作的一种语法糖。
async 函数是一个返回 Promise 对象的函数。在 async 函数内部,可以使用 await 关键字来等待一个 Promise 对象的状态变为 resolved(已完成)再继续执行下面的代码。await 关键字可以放在任何返回 Promise 对象的表达式前面,它会暂停 async 函数的执行,直到 Promise 对象的状态变为 resolved 或 rejected(已拒绝)。
使用 async/await 可以使异步代码的编写更加清晰和易于理解。相较于传统的回调函数或者 Promise 链式调用,async/await 的语法更像是同步代码,使异步操作的逻辑更加扁平化。
下面是一个使用 async/await 的示例:
```javascript
async function fetchData() {
try {
const response = await fetch('https://api.example.com/data');
const data = await response.json();
console.log(data);
} catch (error) {
console.log(error);
}
}
fetchData();
```
在上述示例中,fetchData() 函数是一个异步函数,内部使用了两个 await 关键字来等待 fetch() 方法和 response.json() 方法的完成。这样可以以更加线性的方式编写异步操作,提高代码的可读性和可维护性。
阅读全文