<分区>
这是我的循环代码
var username = ['Sam', 'Adarsh', 'Rohit', 'Rajat'];
for(var i in username){
console.log(username[i]);
}
它的输出与需要的相同,但我不确定为什么需要 Let 声明。我了解 VAR 和 LET 的概念,但不确定在哪些情况下 var 会在 for 循环中产生问题?
请任何人帮助我理解这个概念。我是新手,正在努力弄清楚:)
感谢您的帮助。
<分区>
这是我的循环代码
var username = ['Sam', 'Adarsh', 'Rohit', 'Rajat'];
for(var i in username){
console.log(username[i]);
}
它的输出与需要的相同,但我不确定为什么需要 Let 声明。我了解 VAR 和 LET 的概念,但不确定在哪些情况下 var 会在 for 循环中产生问题?
请任何人帮助我理解这个概念。我是新手,正在努力弄清楚:)
感谢您的帮助。
最佳答案
当您使用 var
时:
var username = ['Sam', 'Adarsh', 'Rohit', 'Rajat'];
for(var i in username){
console.log(username[i]);
}
i // 3
当你使用let
var username = ['Sam', 'Adarsh', 'Rohit', 'Rajat'];
for(let i in username){
console.log(username[i]);
}
i // Uncaught ReferenceError: i is not defined
ES6 中的 let
将创建 block 作用域到函数作用域
关于javascript - 我对 for 循环中的 javascript let 和 var 感到困惑?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40519064/