使用 await 实现异步调用
在JavaScript中,要使用await
实现异步调用,需要以下几个步骤:
- 定义一个异步函数,使用
async
关键字 - 在异步函数中,使用
await
关键字等待一个返回Promise
的函数 - 使用
try...catch
语句处理可能的错误 - 调用异步函数,并使用
then
方法或await
关键字获取结果
假如有一个返回Promise
的函数fetchUser
,它可以从服务器获取用户信息,你可以这样定义和调用一个异步函数:
// 定义一个异步函数
async function getUser() {
try {
// 等待fetchUser函数返回Promise
let user = await fetchUser();
// 处理结果
console.log(user.name);
} catch (error) {
// 处理错误
console.log(error);
}
}
// 调用异步函数,并使用then方法获取结果
getUser().then(() => console.log("Done"));
// 或者在另一个异步函数中使用await关键字获取结果
(async function(){
await getUser()
console.log("Done");
})();
在JavaScrpt中,使用await
关键字可以实现异步调用。await
关键字只能在async
函数内部使用,用于等待一个异步操作完成并返回结果,然后将其赋值给一个变量。以下是一个简单的例子:
async function example() {
const result = await someAsyncFunction();
console.log(result);
}
// 调用异步函数
example();
在上面的例子中,example()
是一个async
函数,它使用await
关键字等待someAsyncFunction()
函数执行完成并返回结果。当someAsyncFunction()
执行完成后,它的结果将被赋值给result
变量,然后在控制台上输出。
请注意,使用await
关键字的函数必须在函数定义前面加上async
关键字,以指示它是一个异步函数。