什么是变量提升
1 function fun(){
2 console.log(num);
3 var num = 20;
4 }
相当于 ---
5 function fun(){
6 var num;
7 console.log(num);
8 Num = 20;
9 }
在函数体内声明变量,会把该声明提升到函数体的最顶端。 只提升变量声明,不赋值。
部,
var a = 18;
f1();
function f1(){
var b=9;
console.log(a);
console.log(b);
var a = '123';
}
结果是: undefined 9