Promise Error Handling
JavaScript 🟡 MidDéfinition
Les rejections de Promise doivent être catchees avec .catch() ou try/catch avec await. Les rejections non gérées déclenchent unhandledrejection et peuvent crasher en Node.js.
Analogie
Un filet sous le trapèze : sans lui (catch), la moindre chute (rejection) est fatale.
Exemple de code
// Avec async/await
try {
const data = await fetchData();
} catch (err) {
handleError(err);
}
// Global fallback
window.addEventListener('unhandledrejection', (e) => {
reportError(e.reason);
});
Cas d'usage
Toute chaîne de promesses doit avoir un catch terminal pour éviter les rejections silencieuses.
Anti-pattern
Chaîne de .then() sans .catch() final, ou catch vide qui avale les erreurs.