January 2019
Beginner
210 pages
4h 47m
English
It is common to find mentions of functions as first-class citizens in the FP literature. We say that a function is a first-class citizen when it can do everything that a variable can do, which means that functions can be passed to other functions as an argument. For example, the following function takes a function as its second argument:
function find<T>(arr: T[], filter: (i: T) => boolean) { return arr.filter(filter);}find(heroes, (h) => h.name === "Spiderman");
Or, it is returned by another function. For example, the following function takes a function as its only argument and returns a function:
function find<T>(filter: (i: T) => boolean) { return (arr: T[]) => { return arr.filter(filter); }} const findSpiderman ...Read now
Unlock full access