Learn Functional Programming, One Tab at a Time.
There is a useful free Chrome extension called FP Glossary. It explains functional programming concepts when you open a new tab in Chrome.
Currying The process of converting a function that takes multiple arguments into a function that takes them one at a time.
Each time the function is called it only accepts one argument and returns a function that takes one argument until all arguments are passed.
const sum = (a, b) => a + b const curriedSum = a => b => a + b curriedSum(40)(2) // 42. const add2 = curriedSum(2) // (b) => 2 + b add2(10) // 12
You can see all the code in the public Github repository.