JavaScript Closures Explained
Step through scope chains and see how inner functions capture variables from their parent — visually.
By Forhad·14 min read·IntermediateInteractive Demo
What is a Closure?
A closure is a function that remembers the variables from its outer scope even after the outer function has returned. It "closes over" those variables, keeping them alive.
Key Concepts
- Lexical scope — functions can access variables from their parent scope
- Scope chain — nested functions create a chain of accessible scopes
- Data privacy — closures enable private variables and module patterns
- Common gotcha — closures in loops share the same variable reference
Visual Preview
Interactive demo coming soon — check back for the full closures visualizer.