Método JavaScript Promise.race()

El método Promise.race() devuelve una promesa que cumple o rechaza tan pronto como una de las promesas en un iterable cumple o rechaza, con el valor o la razón de esa promesa.

Podemos pensar en este método en particular como en la forma de un ejemplo de la vida real donde varias personas están corriendo en una carrera, quien gane primero gana la carrera, el mismo escenario está aquí, cualquier promesa que se cumpla con éxito o se rechace al principio se ejecutará en Los resultados del primero y del resto no se mostrarán como salida.

Sintaxis:

Promise.race(iterable);

Parámetros:

  • iterable: un objeto iterable como Array, Map, String, etc. que tiene varias promesas diferentes en ellos.

Ejemplo 1:

Javascript

<script>
const promise1 = new Promise((resolve, reject) => {
  setTimeout(resolve, 600, "one");
});
 
const promise2 = new Promise((resolve, reject) => {
  setTimeout(resolve, 200, "two");
});
 
Promise.race([promise1, promise2]).then((value) => {
  console.log(value);
});
</script>

Salida: como promise2 fue más rápido, imprime su propio resultado, que es dos.

two

Ejemplo 2:

Javascript

<script>
const promise1 = new Promise((resolve, reject) => {
  setTimeout(() => resolve("five"), 500);
});
 
const promise2 = new Promise((resolve, reject) => {
  setTimeout(() => reject(new Error("six")), 100);
});
 
Promise.race([promise1, promise2]).then((value) => {
  console.log(value);
});
<script>

Salida: Comopromise2 es más rápido quepromise1, por lo que rechaza y no imprime nada.

Navegadores compatibles: 

  • Google Chrome 32 y superior
  • Borde 12 y superior
  • Mozilla Firefox 29 y superior
  • Ópera 19 y superior
  • Safari 8 y superior
  • Internet Explorer no es compatible

Publicación traducida automáticamente

Artículo escrito por mihir0699 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *