JavaScript在执行代码之前会校验代码,声明变量提前至当前作用域最前面。
var name = 123;
function getName(){
console.log(name);
}
getName();
输出123
-------------------------------------------------
var name = 123;
function getName(){
console.log(name);
var name = 456;
}
getName();
输出undefined;