我有点困惑http://jsfiddle.net/
{
for (var counter = 1; counter < 6; counter++) {
}
}
console.log(counter);
如果在作用域中可以使用来自循环的变量,那么就创建了
for loop
,那么为什么我可以访问一个更高级别的变量,因为我通过在这些括号中创建了另一个作用域? 最佳答案
使用var
关键字创建的变量具有函数作用域(如果在函数外部声明,则为全局作用域)。
ES6为块范围变量引入了let
关键字。
关于javascript - 循环中的可变范围,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24693595/