The JavaScript functional toolbox – map, filter, and reduce

The map, filter, and reduce functions (which you learned about in Chapter 3, Arrays) are the base of functional programming in JavaScript.

Using the map function, we can transform or map a collection of data into another collection of data. Let's take a look at an example using imperative programming:

const daysOfWeek = [ 
  {name: 'Monday', value: 1}, 
  {name: 'Tuesday', value: 2}, 
  {name: 'Wednesday', value: 7} 
]; 
 
let daysOfWeekValues_ = []; 
for (let i = 0; i < daysOfWeek.length; i++) { 
  daysOfWeekValues_.push(daysOfWeek[i].value); 
} 

Now let's consider the same example using functional programming with ES2015+ syntax, as follows:

const daysOfWeekValues = daysOfWeek.map(day => day.value); ...

Get Learning JavaScript Data Structures and Algorithms - Third Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.