Saltar al contenido

Encadenamiento de Promesas en JavaScript

El encadenamiento de promesas es una técnica en la que cada promesa devuelve otra promesa, lo que permite enlazarlas entre sí. Este enfoque es muy útil cuando necesitas realizar múltiples operaciones asincrónicas de forma consecutiva, donde cada operación subsiguiente comienza cuando termina la anterior.

Para obtener más información sobre la naturaleza de las promesas en JavaScript, consulta JavaScript: Promesas.

Encadenamiento básico de promesas

Considera el escenario en el que necesitas consultar una base de datos, luego usar el resultado de esa consulta para realizar otra consulta y, finalmente, mostrar el resultado en la pantalla. Así es como puedes implementarlo utilizando el encadenamiento de promesas:

Output appears here after Run.

Manejo de errores en cadenas

El manejo adecuado de errores dentro de las cadenas de promesas es crucial para evitar fallos y comportamientos no deseados. Un único .catch() al final de la cadena puede manejar cualquier error que ocurra en cualquier punto de la cadena de promesas.

Output appears here after Run.

Técnicas avanzadas en el encadenamiento de promesas

Además del encadenamiento básico, puedes mejorar tus flujos de trabajo basados en promesas con estas técnicas avanzadas:

Devolución de valores

Cada .then() puede devolver un valor que se envolverá en una nueva promesa y se pasará al siguiente .then() de la cadena.

Output appears here after Run.

Promise.all

Cuando tienes múltiples promesas y necesitas esperar a que todas terminen, Promise.all es increíblemente útil. Toma un array de promesas y devuelve una nueva promesa que se resuelve cuando todas las promesas de entrada se han resuelto.

Output appears here after Run.

Conclusión

Las promesas de JavaScript y su encadenamiento son indispensables en el desarrollo web moderno, especialmente al manejar múltiples eventos o acciones asincrónicas que deben ocurrir en una secuencia específica. Al dominar las promesas, puedes escribir código JavaScript más limpio y eficiente, mejorando el rendimiento y la fiabilidad de tus aplicaciones web.

Práctica

¿Cuál es el propósito del encadenamiento de promesas en JavaScript?

¿Te resulta útil?

Vista previa dual-run — compárala con las rutas Symfony en producción.