谁能解释一下这段代码的输出?



这是我正在编译的代码。

var a = 10;
var c = 5;
b(40);
function b(x) {
a(20);
a=40;
c=50;
function a() { console.log(x);}  
}
console.log(a);
console.log(c);

你能告诉我输出并解释一下吗?

40 10 50

第二个是公元前10年,b()中声明的a与开始时声明的a不同(只需执行代码)。

401050

第一个b(40)将被执行。然后是a(20),它将忽略20并打印x(当前为40)。然后将a设置为40,c设置为50。然后将它们都打印在第12行和第13行。

最新更新