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';
})()