Closures
Closures in JavaScript | Inside a loop, inner function and setTimeoout
by shuja uddin
HTML
<div>
lexical scope is the variable that are define in upper scope they are automatically availabe in function
</div>
<div>
inside function variable a is available beacuse it is inside function,
</div>
<div>
real situation you define variable somewhere else and you execute varible somewhere else in different block you have to use closure
</div>
<div>
closure inside loop
</div>
JavaScript
//lexical scope
let i =1;
f=()=>{
console.log(i);
}
//f();
//lexical scope
let dd;
if(true){
let a =1;
dd=()=>{
console.log(a);
}
}
console.dir(dd)//console show closure hold value 1
//console.log(a);//it give a error
dd();//it print 1
let ff=()=>{
let ii =3;
let jj=4;
return()=>{
console.log(ii);
}
};
console.dir(ff()) //you see anonymous function inside you see closure which is 3 you dont get j in closure beacuse you are calling j if you console it then it will show
//closure inside loop
for(let l=0;l<3;i++){}