js的坑

2017-02-14  本文已影响53人  向布谷鸟说早安

1.函数声明变量提升

函数声明变量提升
其中有个例子

var v='Hello World';
(function(){
alert(v);
var v='I love you';
})()

结果是undefined.
这是为什么呢?
这应该从js解释器开始解释,js解释器会默认把所有的变量声明都提升,所以上述代码可以看成这样:

var v='Hello World';
(function(){
var v;
alert(v);
v='I love you';
})()
上一篇下一篇

猜你喜欢

热点阅读