
- 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
Using closures to achieve privacy in JavaScript
Following is the code for implementing closures to achieve privacy 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: 18px; font-weight: 500; color: blueviolet; } </style> </head> <body> <h1>Using closures to achieve privacy</h1> <div class="result"></div> <br /> <button class="Btn">Increment</button> <button class="Btn">Access</button> <h3>Click on the above button to increment or try to access the variable</h3> <script> let resEle = document.querySelector(".result"); let BtnEle = document.querySelectorAll(".Btn"); function increment() { let a = 0; return function () { a++; return a; }; } let inc; inc = increment(); BtnEle[0].addEventListener("click", () => { resEle.innerHTML = inc(); }); BtnEle[1].addEventListener("click", () => { try { resEle.innerHTML = a; } catch (err) { resEle.innerHTML = err; } }); </script> </body> </html>
Output
On clicking the ‘Increment’ button 4 times −
On clicking the ‘Access’ button −
- Related Articles
- Implement Private properties using closures in JavaScript
- What are Closures in JavaScript?
- Practical Uses for Closures in Javascript?
- How do closures work in JavaScript?
- JavaScript closures vs. anonymous functions
- How do JavaScript closures work?
- What are JavaScript Function Closures?
- How to use closures in Golang?
- Python Closures?
- How to achieve parallel execution in TestNG?
- What are Closures in Lua Programming?
- Best Practices for Project Closures to Implement
- Important Tips to Achieve Success in Green Belt Projects?
- What is loose coupling how do we achieve it using Java?
- Achieve Pagination with MongoDB?

Advertisements