javascript - javascript for循环执行顺序
问题描述
任何人都可以告诉我这些东西..所以我正在从这个网站阅读一篇关于关闭的文章https://wsvincent.com/javascript-closure-settimeout-for-loop/
文章说明了这个常规 for 循环的幕后发生的事情
for (var i = 1; i < 5; i++) {
console.log(i); // 1 2 3 4
}
// 来自文章
1st pass: i is 1, increment to 2, check is 2 < 5? Yes, so output.
2nd pass: i is 2, increment to 3, check is 3 < 5? Yes, so output.
3rd pass: i is 3, increment to 4, check is 4 < 5? Yes, so output.
4th pass: i is 4, increment to 5, check is 5 < 5? No, so exit loop.
我的问题是如果i
1 不再是第一个输出,是否已经增加?我现在真的很困惑。
解决方案
链接的解释显然是错误的,你的循环:
for (var i = 1; i < 5; i++) {
console.log(i); // 1 2 3 4
}
相当于:
var i=1;
while (i<5) {
console.log(i);
i++;
}
所以:
- 我 = 1
- 测试 1<5, log(1) 然后递增
- 测试 2<5, log(2) 然后递增
- 等等
推荐阅读
- java - 如何从 Firebase 检索不同对象类型的列表?
- python - 如何从 txt 文件中读取 n 行?n 作为输入给出
- r - R Shiny仪表板仅加载一次选项卡
- asp.net-core - 获取 Blazor 文本输入的插入符号位置
- python - Django 电子邮件 - [Errno 2] 没有这样的文件或目录
- android - Firebase 存储下载速度太慢。备择方案?
- google-colaboratory - 通过 Google Colab 在 google drive 中提取 zip 文件后,某些文件会消失
- c# - 剃刀页面中的路由数据
- android - 如何以最小尺寸在 android 应用程序中添加导航抽屉
- python - 在 Jupyter 笔记本中使用 /usr/bin/python3