【发布时间】:2018-05-24 07:21:23
【问题描述】:
当我阅读这篇文章https://stackoverflow.com/a/111111/6359753中的示例6时,我的脑海中突然出现了这个问题
会不会有区别
// Example 1
let i;
var arr = [1,2,3]
for (i=0; i<arr.length; i++){
// do stuff
}
和
// Example 2
var arr = [1,2,3]
for (let i=0; i<arr.length; i++){
// do stuff
}
如果它们相同,为什么它们相同?
换句话说,我不太了解let 的范围。如果在循环之外声明,它们是否在循环之外?示例 2 的 let 显然是在 for 循环内限定的,但示例 1 我不太确定。
【问题讨论】:
-
let 用于分配变量 temp,它们仅在该范围内工作。例如。如果你在 for 循环中使用 let i=0,它只在该循环内有效。
标签: javascript var let