Con esta idea surgieron las promesas que nos permiten lanzar peticiones a APIs externas, a servicios o a bases de datos mientras se continua ejecutando nuestro código y cuando llege la respuesta se completa el contenido que pretendemos mostrar al usuario.
setTimeout
Veamos un ejemplo de gran sencillez para mostrar la idea de que el códgio se continúa ejecutando aunque alguna línea se retrase en su ejecución.- Primera sentencia. Imprime por consola
a
. - Segunda sentencia. Se ejecuta con un retrardo de 1 segundo, por lo que no imprime nada aún.
- Tercera sentencia. Imprime
c
justo después dea
ya que no espera a que se imprimab
. - Finalmente se imprime por consola
b
con un retardo, por lo que b se imprime en último lugar.
console.log('a');
setTimeout(()=>{
console.log('b (1 segundo después)')
},1000);
console.log('c');
Promesas
Las promesas representan un valor que puede estar disponible ahora, en le futuro o nunca.Se utilizan en tecnologías asíncronas porque evitan el callback hell.
Una promesa puede tener tres estados:
- puede estar pendiente
- puede estar resuelta
- puede estar rechazada
No hay comentarios:
Publicar un comentario