Capítulo 3: Promesas
3.1. Creación de promesas: new Promise(executor)
new Promise(executor)// Sintaxis: new Promise((resolve, reject) => { ... })
const miPromesa = new Promise((resolve, reject) => {
// resolve: Cuando todo va bien
// reject: Cuando hay un error
if (Math.random() > 0.5) {
resolve("¡Éxito!");
} else {
reject("¡Error!");
}
});
// Las Promesas están listas para usar después de crearlas
console.log(miPromesa); // Promise { <pending> }Ejemplo práctico: Simular una descarga
3.2. Estados: pending, fulfilled, rejected
Cambio de estado (irreversible):
3.3. Métodos .then(), .catch(), .finally()
.then(), .catch(), .finally().then(onFulfilled, onRejected)
.then(onFulfilled, onRejected).catch(onRejected)
.catch(onRejected).finally(onFinally)
.finally(onFinally)3.4. Promise chaining: Encadenar promesas
Forma abreviada (arrow functions):
3.5. Propagación de errores en cadenas
Capturar y continuar:
3.6. Promesas ya resueltas y perezosas
Promesas inmediatamente resueltas:
Promesas perezosas (lazy):
Resumen del Capítulo
💡 Conceptos Clave:
🤔 Preguntas de Reflexión:
Última actualización
¿Te fue útil?