JavaScript Promise API
The Promise API provides powerful methods to work with multiple promises efficiently.
🔹 1. Promise.all()
– Wait for All Promises
✅ Resolves when all promises succeed
❌ Rejects if any fail
✅ Output:
✔ If one fails, everything fails!
🔹 2. Promise.allSettled()
– Handle All Outcomes
✅ Waits for all promises
✔ Returns both resolved & rejected results
✅ Output:
✔ Handles errors gracefully!
🔹 3. Promise.race()
– First One Wins
✅ Resolves/rejects as soon as the first promise settles
✅ Output (after 500ms):
✔ First resolved/rejected promise decides the result.
🔹 4. Promise.any()
– First Success Wins
✅ Resolves when any promise resolves
❌ Fails only if all fail
✅ Output (after 1 sec):
✔ Only rejects if all fail!
🔹 5. Promise.resolve()
& Promise.reject()
✅ Promise.resolve(value)
Returns a promise that resolves instantly.
❌ Promise.reject(error)
Returns a promise that rejects instantly.
🔹 Summary
Method | Resolves when | Rejects when | Use case |
---|---|---|---|
Promise.all() | All promises resolve | Any promise rejects | Run multiple promises and fail fast |
Promise.allSettled() | All promises settle | Never rejects | Get both success & failure results |
Promise.race() | First promise resolves/rejects | First promise rejects | Get first completed result |
Promise.any() | First promise resolves | Only if all reject | Get first success & ignore failures |
Promise.resolve(value) | Instantly resolves | Never | Create resolved promise |
Promise.reject(error) | Never | Instantly rejects | Create rejected promise |
🚀 Need examples? Just ask! 😊