A-Promesses, Await, Async (ES6)
La fonctionnalité asynchrone des promesses a été introduite officiellement dans la norme ECMAScript6.
Les promesses, c’est quoi ?
Comme dans la vie courante, une promesse en javascript est un engagement à fournir une valeur. Comme dans la vie courante, cette promesse peut être tenue, dans ce cas on récupère la valeur, ou non tenue, et on réagit en conséquence.
Leur écriture est aussi plus simple que l’utilisation en chaîne de fonctions de callback imbriquées. Le code sera donc plus clair, plus facile à comprendre et à maintenir.
Créer une promesse
Pour créer une promesse, nous utiliserons le constructeur « Promise« , apparu avec ES6.
Pour créer une promesse, on utilise l’opérateur new et le constructeur.
Celui-ci prend en argument une fonction qui prend deux fonctions en paramètres.
La première est appelée quand la tache asynchrone est correctement terminée et seconde est appelée quand la tache échoue.
On peut ainsi obtenir des fonctions asynchrones en envoyant une promesse.
On peut utiliser sa fonction then () en lui passant une fonction qui sera exécuter dès qu’un résultat sera reçu.
On peut aussi utiliser sa fonction catch () en lui passant une fonction qui sera exécuter si une erreur est survenue.
Le gros avantage des promesses est que l’on peut aussi chainer les promesses. Ainsi la valeur que l’on retourne dans la fonction que l’on passe à then.
Nous allons donc créer une fonction qui chargera une url distante, par exemple, et retournera un résultat uniquement quand elle aura terminé.
Pour commencer, nous allons créer la fonction et y intégrer la promesse :
1-création de la promesse :

2- capter l’état de la promesse

Exemple :
Index.html

users.js

app.js


Async et Await
En complément des promesses nous avons accès à deux mots clés qui sont async et await.
Notre fonction peut également retourner une promesse si elle est précédée du mot clé ‘async’.

Résultat console

Exemple
