又弄错了
var a = 1;
function test(){
alert(a);
var a = 2;
} test();
运行的结果是undifined.不是2.
js 的执行过程中,编辑器先以读入代码段,对代码段中的var 变量和function 定义进行“预解析”,预解析var 变量的时候,初始化为undefined
相当于一下代码:
var a = 1;
function test(){
var a;
alert(a);
a = 2;
}
test();

浙公网安备 33010602011771号