web-dev-qa-db-fra.com

Est-il sécuritaire d'utiliser async / wait maintenant?

Est-il prudent d’utiliser async-wait en Javascript au lieu de générateurs-promesses, sachant que la syntaxe n’a pas encore été prise en compte et qu’elle viendra avec la sortie de la version ES8?

Quels navigateurs puis-je compter sur sa disponibilité, et quelle est la fréquence des navigateurs lorsque cette syntaxe n'est pas disponible? Par Safe, je veux dire sans transpirateurs comme Babel?

46
Abhijeet

Il y a deux endroits que je vérifie chaque fois que j'ai des questions comme celle-ci:

Le puis-je utiliser le site Web: http://caniuse.com/#search=await

Et Noeud Vert : http://node.green/#async-functions

En règle générale, une réponse est encouragée à inclure les informations pertinentes pour éviter la pourriture du lien. Mais ironiquement, cette réponse a exactement le problème opposé: cette réponse pourrira (les informations ci-dessous deviendront invalides) bien avant les liens ci-dessus. Donc, vérifiez toujours caniuse et node.green en premier:

De caniuse.com à compter d'avril 2019:

  • [~ # ~] c'est-à-dire [~ # ~] *: NON PRIS EN CHARGE (version la plus utilisée = 11)
  • Edge : à partir de la version 15 (version la plus utilisée = 17)
  • Firefox : à partir de la version 52 (version la plus utilisée = 65)
  • Chrome : à partir de la version 55 (version la plus utilisée = 72)
  • Safari : à partir de la version 10.1 (version la plus utilisée = 12)
  • Opera : à partir de la version 42 (version la plus utilisée = 58)
  • iOS Safari : à partir de la version 10.3 (version la plus utilisée = 12.1)
  • Opera Mini *: NON PRIS EN CHARGE
  • Navigateur Android *: à partir de 5 (version la plus utilisée = 4.4)
  • Chrome pour Android : à partir de la version 55 (version la plus utilisée = 71)

De node.green à partir d'avril 2019

  • Node.js: à partir de la version 8.0.0

Donc, selon ce que vous pensez être acceptable, il est en sécurité ou non. Notez les points suivants:

  • Cette question avait été posée pour la première fois en 2017 et nous avons parcouru un long chemin. Par conséquent, l'utilisation asynchrone/wait est beaucoup plus sûre maintenant.
  • En 2019, la plupart des appareils mobiles prennent déjà en charge async/wait.
  • Node 8 étant publié en mai 2017, il devrait être prudent d’utiliser async/wait sur Node.js, à moins que vos serveurs Node.js ne soient très obsolètes.
62
slebetman