繁体   English   中英

JavaScript for 循环如何与变量一起工作

[英]How do JavaScript for-loop work with a variable

我是 JavaScript 的新手,有些东西我很难理解……

for(var i = 0; i < 3; i++) {
    console.log(i)
}
console.log(i);

这是一段代码,当我看到这个时,我马上就认为输出会是这样的,

//0
//1
//2
//2

由于 for 循环最多计数 2 并将变量保留为 2,我认为如果我在 for 循环之后将其注销,output 将为 2。 但是 output 与我的预期不同..(而不是 2,当它在 for 循环之后记录时会吐出 3)

//0
//1
//2
//3

我阅读了几篇文章,他们确实解释了变量的 scope 是全局的,但我仍然不明白为什么我得到 3 作为 output。

(我读过的一篇文章: https://www.freecodecamp.org/news/thrown-for-a-loop-understanding-for-loops-and-timeouts-in-javascript-558d8255d8a4/

非常感谢您的帮助,在此先感谢。

想一想,如果i2那么循环仍然会运行,因为2 < 3 在这个循环结束时i = 2它将使用i++ ,因此i现在是3 现在条件失败,因为3 < 3是假的,所以它退出了。 因此i仍然是3

3i上第一个中止循环的数字。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM