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 Asynchronous JavaScript with Callbacks Implement a Callback

Mohamed El-Damarawy
Mohamed El-Damarawy
11,291 Points

map vs forEach

Why did we loop with map and not forEach? Does it make any difference in the context of this exercise?

I think my issue here is understanding the difference between map and forEach

1 Answer

Steven Parker
Steven Parker
210,130 Points

The difference between forEach and map is the handling of return values. The map method builds a new array made of the return values from the callback and then returns that array, while forEach ignores any return value from the callback and its own return is undefined.

So use map when your callback returns a value, and you will use an array made up of those values.

That makes sense! In this case, it looks like forEach() works also. Is there any reason .map() is preferable in this particular case, given (at least so far), the returned array is not being used?

Steven Parker
Steven Parker
210,130 Points

When the return value from "map" isn't used, there's no functional difference from "forEach".