我可以使用async
关键字将 JavaScript 函数标记为“异步”(即返回Promise)。像这样:
async function foo() {
// Do something
}
箭头函数的等效语法是什么?
我可以使用async
关键字将 JavaScript 函数标记为“异步”(即返回Promise)。像这样:
async function foo() {
// Do something
}
箭头函数的等效语法是什么?
异步箭头函数如下所示:
const foo = async () => {
// do something
}
对于传递给它的单个参数,异步箭头函数看起来像这样:
const foo = async evt => {
// do something with evt
}
对于传递给它的多个参数,异步箭头函数看起来像这样:
const foo = async (evt, callback) => {
// do something with evt
// return response with callback
}
该匿名形式的作品,以及:
const foo = async function() {
// do something
}
异步函数声明如下所示:
async function foo() {
// do something
}
在回调中使用异步函数:
const foo = event.onCall(async () => {
// do something
})
在类中使用异步方法:
async foo() {
// do something
}
分配一个简单的方法async
箭头函数表达式的命名变量:
const foo = async () => {
// do something
}
(请注意,这并不严格等同于async function foo() { }
。除了关键字和箭头表达式之间的差异function
之外,此答案中的函数并未“提升到顶部”。)
立即调用异步箭头函数:
(async () => {
console.log(await asyncFunction());
})();
立即调用异步函数表达式:
(async function () {
console.log(await asyncFunction());
})();
带参数的异步箭头函数语法
const myFunction = async (a, b, c) => {
// Code here
}
基本示例
folder = async () => {
let fold = await getFold();
//await localStorage.save('folder');
return fold;
};