Up to now, we haven't really been able to appreciate the possibilities of Functional Programming (FP) as it pertains to working in a higher-level, declarative fashion. In this chapter, we will correct this, and start getting shorter, more concise, and easier to understand code, by using some higher-order functions (HOF); that is, functions that take functions as parameters, such as the following:
- reduce() and reduceRight() to apply an operation to a whole array, reducing it to a single result
- map() to transform one array into another by applying a function to each of its elements
- flat() to make a single array out of an array of arrays
- flatMap() to mix together mapping and flattening
- forEach() to simplify writing loops by abstracting the necessary looping code
We'll also be able to perform searches and selections...