gpt4 book ai didi

javascript - for循环中声明的变量范围,javascript

转载 作者:行者123 更新时间:2023-11-28 11:57:56 24 4
gpt4 key购买 nike

我在 Eclipse 中遇到错误:

for (var i = 0; i < foo; i++) {
...
}
...
while (someCondition) {
for (var i = 0; i < bar; i++) {
...
}
}

循环使用相同的变量名称。 Eclipse 向我发出警告:'i' 已定义。如果我删除第二个 for 循环中的 var som,它不会给我警告。

据我所知,for 循环中声明的变量(在本例中为 i)与循环具有相同的作用域。

Eclipse 正确吗?这些 i 变量是否在同一范围内?

最佳答案

JavaScript 中的局部变量的作用域为封闭函数。因此,两个 i 具有相同的作用域。

为了说明,

function f() {
...
for (var i = ...; ...; ...) {
...
}
}

相当于

function f() {
var i;
...
for (i = ...; ...; ...) {
...
}
}

关于javascript - for循环中声明的变量范围,javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19610633/

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