JavaScript 中的异步编程是处理长时间运行的操作(如网络请求、文件读写等)的关键。async
和 await
是 ES2017 引入的,它们使得异步代码的编写和阅读都变得更加容易。
什么是异步?
在 JavaScript 中,异步操作指的是不会阻塞主线程的操作。这意味着即使一个操作需要一些时间来完成,主线程也可以继续执行其他任务。
使用 async 和 await
async
关键字用于声明一个异步函数。当你使用 await
关键字时,它将等待一个 Promise 对象解析,并返回解析的结果。
async function fetchData() {
const data = await fetch('/api/data');
return data.json();
}
fetchData().then(data => {
console.log(data);
});
示例:获取用户信息
以下是一个使用 async
和 await
获取用户信息的示例:
async function getUserInfo(userId) {
const response = await fetch(`/api/users/${userId}`);
const userInfo = await response.json();
return userInfo;
}
getUserInfo(1).then(userInfo => {
console.log(userInfo);
});
图片:JavaScript 异步编程流程
总结
async
和 await
是 JavaScript 异步编程的强大工具。通过它们,你可以编写更加清晰和易于维护的异步代码。
扩展阅读
想要了解更多关于 JavaScript 异步编程的知识,可以阅读本站的 JavaScript 异步编程指南。