async 和 await 关键字主要适用于异步编程。在 JavaScript 这种单线程语言中,如果有阻塞操作比如网络请求或者文件读取,传统的方式是使用回调函数处理异步结果,让主线程等待结果返回再进行下一步操作。但是这样容易造成“回调地狱”的情况,代码可读性变差。使用 async 和 await 可以让异步操作像同步操作一样顺序执行,代码更加简洁易读。
下面是一个例子,使用 async 和 await 处理异步请求:
async function fetchUser() {
const response = await fetch('https://api.github.com/users/octocat');
const data = await response.json();
return data;
}
fetchUser().then(data => console.log(data));
在这个例子中,定义了一个 async 函数 fetchUser
,其中使用了 await
关键字等待异步请求返回结果。在最后调用该函数时,使用 then
方法处理异步结果。