Je peux marquer une fonction javascript comme "asynchrone" (c'est-à-dire retourner une promesse) avec le mot clé async
. Comme ça:
async function foo() {
// do something
}
Quelle est la syntaxe équivalente pour les fonctions de flèche?
Async fonctions de flèche ressemblent à ceci:
const foo = async () => {
// do something
}
Async les fonctions de flèche ressemblent à ceci pour un seul argument qui lui est passé:
const foo = async evt => {
// do something with evt
}
Le formulaire anonyme fonctionne également:
const foo = async function() {
// do something
}
Une fonction asynchrone déclaration ressemble à ceci:
async function foo() {
// do something
}
Utilisation de la fonction asynchrone dans un rappel:
const foo = event.onCall(async () => {
// do something
})
C'est le moyen le plus simple d'affecter une fonction de flèche asynchrone expression à une variable nommée:
const foo = async () => {
// do something
}
Ta-da!
(Notez que cela n’est pas strictement équivalent à async function foo() { }
. Outre les différences entre le mot-clé function
et une expression de flèche , la fonction de cette réponse n’est pas " hissé au sommet " .)
Fonction de flèche asynchrone immédiatement appelée:
(async () => {
console.log(await asyncFunction());
})();
Immédiatement appelée expression de fonction asynchrone:
(async function () {
console.log(await asyncFunction());
})();
Vous pouvez aussi faire:
YourAsyncFunctionName = async (value) => {
/* Code goes here */
}
Syntaxe de la fonction flèche asynchrone avec paramètres
const MyFunction = async (a,b,c) => {
//code here
}