下面是5个帮助您真正理解Javascript核心闭包和范围的小脚本。在控制台运行之前,试着回答每种情况下发生的情况,然后您可以创建一个测试文件来检查您的答案。

1,

复制代码代码如下所示:

如果(!(窗口中的){

var a=1;

}

警报(a);



2,

复制代码代码如下所示:

var a=1,

函数a(x){

x(- x);

};

警报(a);



三,

复制代码代码如下所示:

函数A(x){

返回x×2;

}

VaR;

警报(a);



4,

复制代码代码如下所示:

函数B(x,y,a){

参数{ 2 } = 10;

警报(a);

}

b(1, 2, 3);



5,

复制代码代码如下所示:

函数A(){

警戒(此);

}

a.call(空);



我的预测答案是:未定义的,1,未知的,10,空的。

答案是在这篇文章的结尾,在你看答案之前,你敢猜出来吗











正确答案:1,未定义的2, 13,函数A(x){返回x * 2 } 4, 105,{对象窗口}