1
function Outer(){
var a=10;
function Inner(){
var a = 20;
console.log(a);
}
Inner();
}
Outer();

在这个编解码器中,我希望内部函数打印外部函数的值 a(即 10)。我如何实现这一目标?

4

1 回答 1

1

当您var a = 20;在上面的第四行 delcare 时,您正在重新声明一个已经在范围内的变量并为其分配一个新值。所以新的价值就是你得到的。如果您删除该声明,则名称a将引用外部范围内的变量声明,您将获得 10。

于 2018-12-17T05:27:10.717 回答