Comment utiliser Wait de niveau supérieur dans les modules ES

Découvrez comment utiliser cette nouvelle fonctionnalité actuellement disponible dans la v8

v8de haut niveau récemment introduitawaitpour les modules ES. C'est une nouvelle norme proposée pour ECMAScript, qui areached stage 3.

Remarque: cela prendra un certain temps avant que cette fonctionnalité ne soit utilisable dans la production Node.js et dans Chrome, mais cela vaut la peine d'y jeter un coup d'œil.

En ce moment, nous pouvons utiliser waituniquement à l'intérieur des fonctions asynchrones. Il est donc courant de déclarer une expression de fonction asynchrone immédiatement invoquée pour l'envelopper:

(async () => {
  await fetch(/* ... */)
})()

ou aussi déclarer une fonction et l'appeler ensuite:

const doSomething = async () => {
  await fetch(/* ... */)
}

doSomething()

L'attente de haut niveau nous permettra d'exécuter simplement

await fetch(/* ... */)

sans tout ce code passe-partout.

Avec une mise en garde: cela ne fonctionne quedans les modules ES. Vous ne pouvez pas utiliser cette syntaxe en dehors deModules ES.

Les scripts normaux et les modules CommonJS continueront à utiliserexpressions de fonction immédiatement appeléesou créer une fonction ad hoc comme toujours.

Téléchargez mon gratuitManuel du débutant JavaScript


Plus de tutoriels js: