DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’»

florent giraud
florent giraud

Posted on

[REMINDER-5] Promise.race()

Promise.race() runs as soon as one of the promises you pass to it resolves, and it runs the attached callback just once with the result of the first promise resolved.

example:

const promiseOne = new Promise((resolve, reject) => {
  setTimeout(resolve, 500, 'one')
})
const promiseTwo = new Promise((resolve, reject) => {
  setTimeout(resolve, 100, 'two')
})

Promise.race([promiseOne, promiseTwo]).then(result => {
  console.log(result) // 'two'
})
Enter fullscreen mode Exit fullscreen mode

More important here is to know a use case. I don't have really use case for that.. But in case you want to execute a function as soons as possible or maybe if you are implementing a rendering and call an api at the same time. If the rendering fail at some point. The api call will stop too.

That's it for this reminder

Top comments (0)

11 Tips That Make You a Better Typescript Programmer

1 Think in {Set}

Type is an everyday concept to programmers, but it’s surprisingly difficult to define it succinctly. I find it helpful to use Set as a conceptual model instead.

#2 Understand declared type and narrowed type

One extremely powerful typescript feature is automatic type narrowing based on control flow. This means a variable has two types associated with it at any specific point of code location: a declaration type and a narrowed type.

#3 Use discriminated union instead of optional fields

...

Read the whole post now!