Skip to content

Instantly share code, notes, and snippets.

@thawkin3
Last active March 5, 2020 21:22
Show Gist options
  • Save thawkin3/7b0a2e2afce540b2358097bb288448c3 to your computer and use it in GitHub Desktop.
Save thawkin3/7b0a2e2afce540b2358097bb288448c3 to your computer and use it in GitHub Desktop.
Example usage of Promise.all()
// promises 1-3 all will be resolved
const promise1 = new Promise((resolve, reject) => setTimeout(() => resolve('promise 1 resolved!'), 100))
const promise2 = new Promise((resolve, reject) => setTimeout(() => resolve('promise 2 resolved!'), 200))
const promise3 = new Promise((resolve, reject) => setTimeout(() => resolve('promise 3 resolved!'), 300))
// promise 4 and 6 will be resolved, but promise 5 will be rejected
const promise4 = new Promise((resolve, reject) => setTimeout(() => resolve('promise 4 resolved!'), 1100))
const promise5 = new Promise((resolve, reject) => setTimeout(() => reject('promise 5 rejected!'), 1200))
const promise6 = new Promise((resolve, reject) => setTimeout(() => resolve('promise 6 resolved!'), 1300))
// Promise.all() with no rejections
Promise.all([promise1, promise2, promise3])
.then(data => console.log('all resolved! here are the resolve values:', data))
.catch(err => console.log('got rejected! reason:', err))
// all resolved! here are the resolve values: ["promise 1 resolved!", "promise 2 resolved!", "promise 3 resolved!"]
// Promise.all() with a rejection
Promise.all([promise4, promise5, promise6])
.then(data => console.log('all resolved! here are the resolve values:', data))
.catch(err => console.log('got rejected! reason:', err))
// got rejected! reason: promise 5 rejected!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment