Promise
JavaScript 🟢 JuniorDefinition
Objet representant le resultat futur d'une operation asynchrone. Peut etre pending, fulfilled ou rejected. Chainable via .then() et .catch().
Analogie
Un ticket de pressing : tu deposes ton vetement, tu recois un ticket, et tu reviens le chercher quand c'est pret (ou on te previent si c'est perdu).
Exemple de code
const getData = () => new Promise((resolve, reject) => {
setTimeout(() => resolve('data'), 100);
});
getData()
.then(data => console.log(data))
.catch(err => console.error(err));
Cas d'usage
Gerer toute operation asynchrone : appels API, lecture de fichiers, timers.
Anti-pattern
Imbriquer les .then() au lieu de les chainer, recreant un callback hell avec des promesses.