Closures, lexical scope, and practical uses of closures in JavaScript
A closure happens when an inner function keeps access to variables from its lexical outer scope even after the outer function returns.
- Scope is determined lexically
- Closures retain access to outer variables
- Useful for encapsulation and factories
Closures, lexical scope, and practical uses of closures in JavaScript