异步编程是现代JavaScript开发中一个非常重要的概念。async
和 await
是ES2017引入的两个特性,它们让异步代码的编写和阅读变得更加直观。
什么是异步?
在JavaScript中,异步编程通常用于处理那些不会立即完成的操作,比如网络请求、文件读写等。这些操作会阻塞主线程,直到它们完成。使用异步编程可以避免这种情况。
async 和 await
async
函数允许你以同步的方式编写异步代码。当你在一个函数前加上 async
关键字时,这个函数就会返回一个Promise。
async function fetchData() {
// 模拟异步操作
return '数据';
}
fetchData().then(data => {
console.log(data);
});
await
关键字用于等待一个Promise解决(resolve)。当你在一个函数内部使用 await
时,它会暂停函数的执行,直到Promise解决。
async function fetchData() {
const data = await fetch('https://api.example.com/data');
return data.json();
}
fetchData().then(json => {
console.log(json);
});
更多资源
想要了解更多关于异步/await的知识,可以阅读JavaScript异步编程指南。
图片示例
这里有一些关于异步编程的图片示例: