JavaScript声明有个特征,它会将声明的变量与函数提到头部。
函数声明(不要用函数表达式,用了相当于变量声明提升):
sum(1, 2);
function sum(a, b) {
console.log(a + b)
}
上面的代码与下面一致
function sum(a, b) {
console.log(a + b)
}
sum(1, 2);
变量声明:
console.log(a) // undefined
var a =2;
上面的代码与下面一致
var a;
console.log(a) // undefined
a = 2;