Medium Programming & OOP JavaScript & TypeScript
What are closures in JavaScript and how are they used?
Answer
A closure is a function that remembers variables from its outer (enclosing) scope even after the outer function has returned. The inner function maintains a reference to the outer scope's variables. Uses: data privacy (module pattern), function factories, callbacks with state, memoization, partial application/currying. Example: counter factory where inner function accesses and modifies outer variable. Closures enable functional programming patterns. Caution: closures in loops can cause issues (use let or IIFE). Understanding closures is essential for advanced JavaScript patterns.
IIT Certified
Master These Concepts with IIT Certification
175+ hours of industry projects. Get placed at Bosch, Tata Motors, L&T and 500+ companies.
Relevant for Roles
JavaScript Developer Frontend Developer Full Stack Developer