Why Is Global Variable Not Accessible Even If Local Variable Is Defined Later In Code
why does the following code segment generate the following output? code segment: var a = 10; function(){ console.log(a); var a = 5; } output: undefined
Solution 1:
Because variable is hoisted at top and in your function you have declared the variable var a = 5 which is same as following:
var a = 10;
function(){
var a; // a = undefinedconsole.log(a);//a is not defined so outputs undefined
a = 5;
console.log(a);//a is now 5 so outputs 5
}
And in your function scope var is being declared it doesn't see global variable but local variable i.e. var a and which is undefined.
Post a Comment for "Why Is Global Variable Not Accessible Even If Local Variable Is Defined Later In Code"