DEV Community 👩‍💻👨‍💻

Cover image for Promise.all() e Promise.allSettled()
Alexandro Castro
Alexandro Castro

Posted on

Promise.all() e Promise.allSettled()

Se você precisa de duas request assíncronas, seja ela uma busca em função, ou uma API Request, e precisa que ambas retornem dados, para completar 1 ou n informações, no caso de um Map ou fazer uma iteração em algum array.

Onde uma request depende do resultado da outra, mas sem precisar esperar uma request terminar para a outra ser executada. E caso alguma falhar, irá afetar nosso results.

Image description

Então o indicado pela MDN, é para usar o Promise.all()

Image description

Você tem então o resultado com a exception, e pode facilmente tratar.

Se suas promises não depender uma da outra, você pode usar o Promise.allSettled()

Image description

Você terá o status individualmente das resposta e não terá exceções e poderá continuar sua lógica, sabendo quais teve problema e qual teve sucesso.

Image description

Se quiser pesquisar a fundo, indico os seguintes links:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/allSettled

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/all

Bom estudo.

Top comments (0)

Need a better mental model for async/await?

Check out this classic DEV post on the subject.

⭐️🎀 JavaScript Visualized: Promises & Async/Await

async await