Working with Functions
As you've already seen, JavaScript functions are blocks of code with signatures naming the variables that were passed to them when invoked. As with any block, functions have their own stacks that encapsulate and protect data declared within them.
In JavaScript, functions are considered first-class types. This means that, much like any other type, they can be assigned to variables, passed as parameters to other functions, and returned from functions. They are also able to call themselves, which is known as recursive and is the quality that helps make JavaScript a functional language.
There are many forms of function in JavaScript:
- Anonymous functions
- Named functions
- Arrow functions
- Generator functions
The differences between them are mostly slight syntactical changes that affect how they are used. We will briefly cover each of the function types in this chapter.
Anonymous Functions
Since functions in JavaScript are first...