Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

JavaScript Asynchronous Programming with JavaScript Understanding Promises Handle Multiple Promises with Promise.all

Why do we have to make getProfile() return promise at all?

Based on what I read here:

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

the function passed in as an argument in then() itself does not have to return promise, then() function will "convert" the result of that function into a promise anyway, so why don't we just leave it as a regular function returning an array of profiles(instead of array of promise)?

1 Answer

Hey Yaxin Yuan the reason we use Promise.all() is that it ONLY returns an array of promises when we have multiple promises and we want to only know when the promises have successfully finished.

Great question btw you can read it here

and

https://stackoverflow.com/questions/38180080/when-to-use-promise-all