gpt4 book ai didi

javascript - 提升是如何应用于这段 JavaScript 代码的?

转载 作者:行者123 更新时间:2023-11-30 14:30:14 25 4
gpt4 key购买 nike

我知道这段代码会打印 2 因为变量提升,但我不完全理解如何。

我将列出我理解的所有内容,如果您能在每一个旁边回答是或否,我将不胜感激。然后您可以添加任何其他信息。

1) let b = innerMagic() 行引用了 innerMagic() 函数,它返回 a;

2)我们现在已经把值3赋给了变量a,也就是说返回b,应该返回3。但是此时变量设置为2,所以返回2。不能在a之前调用变量分配之前的变量。

function magic() {
let a = 1;
a = 2;
let b = innerMagic();
a = 3;

return b;

function innerMagic() {
return a;
}
}

console.log(magic())

最佳答案

innerMagic 在调用时从外部范围获取 a 的值。所以当innerMagic被调用时,a的值为2。它返回这个值(2),给b,你返回b(2),这就是你打印的内容

关于javascript - 提升是如何应用于这段 JavaScript 代码的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51309082/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com