为什么要在 Javascript for 循环中包含变量声明?

Why Include variable declaration in Javascript for loop?

在 Jon Duckett 的 "Javascript and Jquery" 中,他经常使用如下所示的 for 循环。他解释说,这个变量实际上构建了与循环中找到的数字一样多的数字。我不明白的是,如果您每次运行时都设置 variable = 0,它如何累积更高的数字?此外,你为什么要在你的循环中使用它,你不应该在循环之外指定它,这样它就可以累积到一个更大的数字而不是每次都重置为 0 吗?

if (hotItems.length > 0) {
    for (var i=0; i<hotItems.length; i++) {
        hotItems[i].className = 'cool';
    }
}

for 循环的整个概念有点像 while 循环的快捷方式。你在精神上以错误的方式解析这个。使用 while 循环,这将是:

<b>var i=0;</b>
while (<b>i<hotItems.length</b>) {
hotItems[i].className = 'cool';
<b>i++;</b>
}

for 循环理解为三个部分:第一部分在循环之前,第二部分是条件,第三部分在每次迭代结束时。

所以,不是每次都设置。只有一次。