
- Javascript Basics Tutorial
- Javascript - Home
- Javascript - Overview
- Javascript - Syntax
- Javascript - Enabling
- Javascript - Placement
- Javascript - Variables
- Javascript - Operators
- Javascript - If...Else
- Javascript - Switch Case
- Javascript - While Loop
- Javascript - For Loop
- Javascript - For...in
- Javascript - Loop Control
- Javascript - Functions
- Javascript - Events
- Javascript - Cookies
- Javascript - Page Redirect
- Javascript - Dialog Boxes
- Javascript - Void Keyword
- Javascript - Page Printing
- JavaScript Objects
- Javascript - Objects
- Javascript - Number
- Javascript - Boolean
- Javascript - Strings
- Javascript - Arrays
- Javascript - Date
- Javascript - Math
- Javascript - RegExp
- Javascript - HTML DOM
- JavaScript Advanced
- Javascript - Error Handling
- Javascript - Validations
- Javascript - Animation
- Javascript - Multimedia
- Javascript - Debugging
- Javascript - Image Map
- Javascript - Browsers
- JavaScript Useful Resources
- Javascript - Questions And Answers
- Javascript - Quick Guide
- Javascript - Functions
- Javascript - Resources
What are Closures in JavaScript?
Closures in JavaScript allow us to access outer function scope from inner function even after the outer function has executed and returned. This means that the inner function will always have access to the outer function variable.
Following is the code for closures in JavaScript −
Example
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; } .result { font-size: 20px; font-weight: 500; } </style> </head> <body> <h1>JavaScript Closures</h1> <div style="color: green;" class="result"></div> <button class="Btn">CLICK HERE</button> <h3>Click on the above button to add two numbers using closure</h3> <script> let sampleEle = document.querySelector(".sample"); let resEle = document.querySelector(".result"); function add(num) { return function add1(num1) { resEle.innerHTML += `${num}+${num1} = ${num + num1}`; }; } document.querySelector(".Btn").addEventListener("click", () => { let storeadd = add(99); storeadd(44); }); </script> </body> </html>
Output
On clicking the ‘CLICK HERE’ button −
- Related Articles
- What are JavaScript Function Closures?
- What are Closures in Lua Programming?
- Practical Uses for Closures in Javascript?
- How do closures work in JavaScript?
- JavaScript closures vs. anonymous functions
- How do JavaScript closures work?
- Implement Private properties using closures in JavaScript
- Using closures to achieve privacy in JavaScript
- Python Closures?
- How to use closures in Golang?
- Differences between Lambda Expressions and Closures in Java?
- Best Practices for Project Closures to Implement
- What are events in JavaScript?
- What are Comments in JavaScript?
- What are operators in JavaScript?

Advertisements