Hey! πŸ‘‹

Check out today's ⚑️ Dev Tip πŸ’‘ πŸ‘‡

Follow me on Twitter @shahzaibkhalid for more Dev Tips! ✨

Let’s say we want to run many promises to execute in parallel and wait till all of them are ready. 🧐

javascript // some dummy promises to play with 🍭 const p1 = new Promise(resolve => resolve('Shahzaib')); const p2 = new Promise((_ ,reject) => reject('User does not exists!')); const p3 = new Promise(resolve => resolve('Lahore'));

Promise.all (short-circuits if any of the promises is rejected)

If any of the passed promises is rejected, the promise returned by Promise.all immediately rejects with that error. ❌

javascript Promise.all([p1, p2, p3]) .then(response => console.log(response)) .catch(error => console.log(error)); // πŸ‘‰'User does not exists!'

Promise.allSettled (does not short-circuits)

Waits for all passed promises to settle (either resolved or rejected). πŸ₯³

The resulting array has: - {status: 'fulfilled', value: result} - for successful responses - {status: 'rejected', reason: error} - for errors

```javascript Promise.allSettled([p1, p2, p3]) .then(response => console.log(response));

/* * πŸ‘‰ [ {status: 'fulfilled', value: 'Shahzaib'}, * {status: 'rejected', reason: 'User does not exists!'}, * {status: 'fulfilled, value: 'Lahore'} ] πŸš€ / ```

Hope you learned something new today. Do let me know what do you think about this Dev Tip in the comments below. πŸ‘€

Peace. ✌️