Latence

Dans notre introduction la promesse est immédiatement résolue ou rejetée.

Nous allons ajouter un retard dans la réponse à la promesse afin de montrer l'intérêt principal des promesses.

Pour réaliser le retard, on utilise la fonction setTimeout qui permet d'effectuer une fonction après un temps donné.

1
setTimeout(fn , retard)

fn correspond à la fonction à réaliser et retard au délai en millisecondes après lequel la fonction est effectuée.

1
const etat = "ok";
2
const promesse = new Promise((resolve, reject) => {
3
  setTimeout(() => {
4
    if (etat === "ok") {
5
      resolve("Tout a bien fonctionné. Je retourne une réponse");
6
    } else {
7
        reject("Un problème a eu lieu. Je retourne une erreur");
8
    }
9
  }, 3000);
10
});
11
12
promesse
13
  .then((response) => console.log(response))
14
  .catch((e) => console.error(e));
15
16
console.log("Exemple de Promesse");
17

Vous pouvez tester ce code dans la console de votre navigateur.

On peut voir que Exemple de Promesse s'affiche en premier.

Au bout de 3 secondes la réponse de la promesse s'affiche.