gpt4 book ai didi

javascript - javascript中的变量范围混淆

转载 作者:数据小太阳 更新时间:2023-10-29 05:52:24 26 4
gpt4 key购买 nike

<分区>

我在研究JS中变量作用域的概念,在上面找到了这个例子:

(function() {
var foo = 1;
function bar() {
var foo = 2;
}
bar();
console.log(foo) //outputs 1
if(true) {
var foo = 3;
}
console.log(foo) //outputs 3
})();

这个函数的输出是

1 
3

现在我很困惑为什么 foo 在第二个日志中获取值 3。即使在 if 语句中使用 var 声明了 foo 。在 if 中声明的 foo 不应该在 bar() 中有一个新实例吗??

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