func1();
var a = "hello";
function func1(){
var b = "world";
b = a;
alert(b);
if(false){
var a = "hahaha";
}
}
修改后
var a = "hello";
function func1(){ //方法声明放到前面
var b; //局部变量的所有声明都提前,
var a;
b = "world";
b = a;
alert(b);
if(false){
a = "hahaha"; //只有赋值的时候,才在真实的位置
}
}
func1();
1.javascript在运行前会有预编译期,会把声明提前(不管这个生命是否真的会运行)
2.局部变量的优先权大于全局变量
chrome自定义大小:插件
浙公网安备 33010602011771号