En JavaScript, une Promise
est un objet représentant l'achèvement ou l'échec éventuel d'une opération asynchrone.
Les promesses sont un moyen de gérer des opérations asynchrones en JavaScript. Elles sont utilisées pour encapsuler une valeur qui peut être disponible immédiatement ou plus tard. Une promesse peut être dans l'un des trois états suivants : en attente, résolue ou rejetée. Les promesses sont créées à l'aide du constructeur Promise().
Exemple :
☝🏼 Attention, les promesses ne peuvent pas être réutilisées une fois acceptées ou rejetées
Les promesses ont trois états principaux :
En plus de ces états, les promesses JavaScript fournissent des méthodes pour gérer les résultats de ces opérations asynchrones :
.then(onFulfilled, onRejected)
:
onFulfilled
) et d'erreur (onRejected
) à la promesse.onFulfilled
est appelé si la promesse est résolue, tandis que onRejected
est appelé si la promesse est rejetée..catch(onRejected)
:
.then(null, onRejected)
et est généralement utilisé pour gérer les erreurs..finally(onFinally)
:
Les promesses permettent de gérer les opérations asynchrones de manière plus lisible et structurée, évitant ainsi les problèmes courants associés aux callbacks, tels que le "callback hell". De plus, les promesses sont au cœur de la syntaxe async/await
en JavaScript moderne, offrant une approche encore plus élégante pour gérer l'asynchronie.
Il faut crée une nouvelle promesse à l'aide d'une fonction. Cela garantie qu'une nouvelle promesse sera crée et exécutée à chaque appel de la fonction.