ys3399盈丰国际官网[js]为什么同时定义全局变量和局部变量的时候会出现变量为undefined的情况

2016/12 01 14:12
此文章不得转载,如有需要请联系网站管理员。

一度的温暖,一百度的爱情,来自于ys3399盈丰国际官网的点点滴滴

由于变量提拔啊

function f{//由于变量提拔你可以这么看
    var  a;//此时a未定义,以是为undefined
    console.loga;
    a=2;
}

假如f中没有var a=2;既不会有这种情况
http://www.runoob.com/js/js-h…

var a = 1;//全局变量
function f{
    console.loga;//这里的在这取a实际上曾经定义了只是未赋值,是由于预分析 
    var a = 2;
}
f;
/////////楼主的代码实际相称如下

var a = 1;//全局变量
function f{
    var a;
    console.loga;//在函数外部找到变量a,但此时的a只是定义了undefined
    a = 2;
}
f;

先在函数外部找`function{
console.loga;

var a = 2;

}等价于function{
var a;
console.loga;
a=2;

}`

(看完/读完)这篇文章有何感想! 来看看ys3399盈丰国际官网是怎么评论的吧!

--转载请注明: ys3399盈丰国际官网_www.ys3399.com_ys3399盈丰国际官网网址 » ys3399盈丰国际官网[js]为什么同时定义全局变量和局部变量的时候会出现变量为undefined的情况

发表评论

(必填)