变量的声明提升:
变量声明总是会被解释器悄悄地被“提升”到方法体的最顶部
请注意,变量赋值并没有被提升,只是声明被提升了。
var num1=1; //全局变量,作用域是当前文件
function testf1(){
num1=2; //局部变量,声明被提升
var num1;
alert(num1); //2
}
function testf2(){
alert(num1); //全局变量1
}
变量的声明提升:
变量声明总是会被解释器悄悄地被“提升”到方法体的最顶部
请注意,变量赋值并没有被提升,只是声明被提升了。
var num1=1; //全局变量,作用域是当前文件
function testf1(){
num1=2; //局部变量,声明被提升
var num1;
alert(num1); //2
}
function testf2(){
alert(num1); //全局变量1
}