Logical HOFs
Up to now, we have been using HOFs to produce new results. However, some other functions produce logical results by applying a predicate to all the elements of an array. (By the way, we’ll see much more about HOFs in the next chapter.)
Many meanings
A bit of terminology: the word predicate can be used in several senses (as in predicate logic), but for us, in computer science, it has the meaning of a function that returns true or false. OK, this isn’t a very formal definition, but it’s enough for our needs. For example, saying that we will filter an array depending on a predicate means that we get to decide which elements are included or excluded depending on the predicate’s result.
Using these functions implies that your code will become shorter: you can get results corresponding to a whole set of values with a single line of code.
Filtering an array
We will encounter a common need to filter the elements of an array according...