Functional programming is an approach to software development based around the evaluation of functions. Like mathematics, functions in programming map input to output to produce a result. You can combine basic functions in many ways to build more and more complex programs.
Functional programming follows a few core principles:
-
Functions are independent from the state of the program or global variables. They only depend on the arguments passed into them to make a calculation
-
Functions try to limit any changes to the state of the program and avoid changes to the global objects holding data
-
Functions have minimal side effects in the program
The functional programming software development approach breaks a program into small, testable parts. This section covers basic functional programming principles in JavaScript.