Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialSamuel Kleos
Front End Web Development Techdegree Student 13,307 PointsDoes promise.all() produce an array of objects, or an array-like collection?
All this promise stuff is quite foreign, but it's certainly interesting.
I can understand that every time a request is made to a server, you might need to generate a promise to manipulate the data returned as a promise object with .resolve().
What I don't understand is the nature of the data being delivered to resolve() when the Promise.all() method is applied.
function getProfiles(json) {
const profiles = json.people.map( person => {
return getJSON(wikiUrl+person.name);
});
return Promise.all(profiles);
}
What do promises actually return to the resolve placeholder when Promise.all() is called?
1 Answer
Steven Parker
231,072 PointsThe Promise.all() static method converts the array of promises into a single Promise. The new promise is resolved only when all of the individual promises given to it have resolved, or is rejected when any one of them rejects.
When successful, it returns an array of all the individual fulfillment values.
For more details, see the MDN page on Promise.all().