【发布时间】:2020-08-18 16:47:48
【问题描述】:
我最近遇到了一段代码,它让我对在循环中使用 let 关键字声明的块范围变量感到困惑。
考虑以下代码sn-p:
for (let i = 0; i < 10; i++) {
let i = 'hello';
console.log(i);
}
变量i 的重新声明在这里如何工作?不过,我不能在同一范围内重新声明块范围的变量。
【问题讨论】:
-
范围不一样。每次迭代的范围不同。
-
@Taplar 是的,我知道,但据我所知,我们不应该在循环内重新声明
i。 -
如果是不同的范围,如何重新声明?你忽略了你刚刚同意的前提。
-
这是一个不同的范围。您是在寻找带有规范引用的答案,还是……?
-
@Ry- 我知道循环的每次迭代都有不同的范围。我想,我很困惑
for (let i = 0; i < 10; i++)中声明的i变量是否声明在与循环体内的不同范围内?
标签: javascript