#Hoistingとは
JavaScriptは変数宣言は必要がありません、自動的に変数名を設定されます。
example1.js
var a = 12;
console.log(a);//12
a = 12;
console.log(a);//12
example2は同じ結果になります。こられはhoistingということです。
example2.js
var a;
a = 12;
console.log(a);//12
a = 12;
console.log(a)//12
var a;
example3は無名と名つけ関数のHoistingの事例です。
example3.js
function a(x,y){
return x+y;
}
console.log(a(x,y));//5
var b = function (x,y){
return x+y;
}
console.log(b(2,3));//5
c = function (x,y){
return b+c;
}
console.log(c(2,3));//5
var c;