JavaScript
What is a closure?
Closures are an extremely powerful property of JavaScript
Closures are functions that refer to independent (free) variables. In other words, the function defined in the closure ‘remembers’ the environment in which it was created.
let myName = "javascript";
function printName(){
// console.log(myName)
document.write(myName)
}
myName = 'React Js'
printName()
myName = 'Node Js'
printName()
Function Inside
function numberGenerator() {
// Local “free” variable that ends up within the closure
var num = 1;
function checkNumber() {
console.log(num);
}
num++;
return checkNumber;
}
var number = numberGenerator();
number(); // 2