async 是 JavaScript 中用于声明异步函数的关键字。让我用简单易懂的方式解释:
基本概念
async 让一个函数变成"异步函数",这意味着:
不阻塞代码执行:函数内部的异步操作不会阻止后续代码运行
返回 Promise:自动将返回值包装成 Promise 对象
配合 await 使用:可以在函数内部用 await 等待其他 Promise 完成
//没有async传统方法
function loadData() {
return axios.get('url') // 返回 Promise
.then(response => {
return response.data;
})
.catch(error => {
console.error(error);
});
}
// 使用时
loadData().then(data => {
console.log(data);
});
//有async
async function loadData() {
try {
const response = await axios.get('url'); // 等待请求完成
return response.data; // 自动包装成 Promise
} catch (error) {
console.error(error);
}
}
// 使用时(两种方式)
// 方式1:用 await(必须在 async 函数内)
const data = await loadData();
// 方式2:用 then(因为返回的是 Promise)
loadData().then(data => {
console.log(data);
});
关键特点
语法糖:让异步代码看起来像同步代码,更易读
错误处理:可以用传统的 try-catch 捕获错误
不会阻塞:虽然代码看起来是"等待"的,但不会阻塞整个程序
简单说:async 让写异步代码变得像写同步代码一样简单直观!
版权属于:
wehg489
作品采用:
《
署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)
》许可协议授权
评论