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!

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 trial

JavaScript Asynchronous Programming with JavaScript Asynchronous JavaScript with Callbacks Implement a Callback

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
227,100 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
227,100 Points

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