Entendiendo el 'Promise'
El promise de JS es una función que en sí es difícil de entender, pero que una vez se le coge el truco, es muy útil y utilizada en la programación con JS. Vamos a intentar explicar que es y vamos a ver un ejemplo de este mismo.
Según developer.mozilla sobre Promise obtenemos esta descripción:
El objeto Promise (Promesa) es usado para computaciones asíncronas. Una promesa representa un valor que puede estar disponible ahora, en el futuro, o nunca.
Esto nos dice que vamos obtener un valor, independiente a la carga de la página, en cualquier momento, este valor puede ser obtenido por una llamada realizada con éxito o no.
Por parte del promise
necesitará 2 argumentos, resolver
y rechazar
. Cuando se ejecuta se les pasa los argumentos y el promise
mandará una promesa resuelta si todo ha salido de forma correcta o si no este la rechazará.
Veamos mejor un ejemplo muy sencillo:
Aquí vemos que tenemos una promesa, donde de forma aleatoria, llamará al resolve
indicando que todo ha salido bien o al reject
en caso contrario, esto podríamos hacer nuestra llamada a una API y aquí hacer lo correspondiente al resultado devuelto, un poco, como una llamada AJAX.
Después llamamos a la promesa donde si ha saltado el resolve
al hacer el then
nos devolverá el parámetro del objeto devuelto, en este caso sería un string, en caso contrario saltaría el catch
.