Functions in depth
Use higher-order functions, currying, memoization, recursion and generators confidently.
- JS.07.01Higher-order functions and compositionCoreJunior9 min
- JS.07.02Currying and partial applicationCoreMid-level10 min
- JS.07.03MemoizationCoreMid-level10 min
- JS.07.04Recursion and the stackCoreJunior10 min
- JS.07.05Iterators and generatorsMid-levelBeing written
Interview questions in this module
- What is currying? Implement
curry. - What is memoization? What are its risks?
- What is a higher-order function? Give examples from the standard library.
- Does JavaScript have tail-call optimisation?
- What is a generator? Give a real use case.
- What is the iterator protocol?
- How would you memoize an async function safely?