提问人:Ahmad Sadiq 提问时间:1/20/2021 更新时间:1/20/2021 访问量:65
谁能解释一下这段代码的输出?
Can anybody explain me the output of this code?
问:
这是我正在编译的代码。
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);
你能告诉我输出并解释一下吗?
答:
2赞
Ondolin
1/20/2021
#1
40 10 50
第一个 b(40) 将被执行。然后是 a(20),它将忽略 20 并打印 x(当前为 40)。然后 a 将设置为 40,c 设置为 50。然后它们都将打印在第 12 行和第 13 行。
评论
0赞
1/20/2021
但是 b() 中使用的 a 与开头的 a 不同(diff 函数中的 diff var)
0赞
Ahmad Sadiq
2/8/2021
以上代码给出输出:40 10 50。当我更改函数“a”的名称时,它给出的输出是:40 40 50
2赞
user11649992
1/20/2021
#2
40 10 50
第二个是公元前 10 年,在 B() 中声明的 A 与开头声明的 var 不同(只需执行代码)。
评论
0赞
Ahmad Sadiq
2/8/2021
以上代码给出输出:40 10 50。当我更改函数“a”的名称时,它给出的输出是:40 40 50
0赞
2/8/2021
@AhmadSadiq无需评论两次,你会得到一个答案。实际上,问题出在哪里?
评论