首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript循环

Javascript循环
EN

Stack Overflow用户
提问于 2016-08-17 22:56:48
回答 2查看 112关注 0票数 0

我对JavaScript循环类型感到困惑。

用于循环

我了解到这个循环循环,直到条件不是假的。如果第一次尝试错误,它就永远不会运行。

代码语言:javascript
复制
for (var i = 0; i < 9; i++) {
   console.log(i);
}

它运行循环,直到条件不为假为止。如果第一次尝试是错误的,则循环永远不会启动。

代码语言:javascript
复制
var n = 8;

while (n < 9) {
  n++;
  console.log(n)
}

但我是8,n等于9

问题:

  • 在for循环中,条件为true,即使i=8-8小于9,所以循环应该在数字9处增加i。
  • 这两个循环的定义几乎是一样的,它们之间的差异是什么?
EN

回答 2

Stack Overflow用户

发布于 2016-08-17 23:15:18

您可以看到一个不同之处,因为for循环的最后一个表达式在每次迭代后运行

这意味着以下代码是等价的:

代码语言:javascript
复制
for (var /* VariableDeclarationList */; /* Expression 1 */; /* Expression 2 */) {
  /* StatementList */
}
代码语言:javascript
复制
var /* VariableDeclarationList */;
while (/* Expression 1 */) {
  /* StatementList */
  /* Expression 2 */
}

但是,在转换为while循环时,将表达式n++放在语句的前面。

票数 1
EN

Stack Overflow用户

发布于 2016-08-17 23:06:41

questions/510e3c1a3011b8fa25005255

对于循环,当您知道希望它运行多少次(比如for (var i; i < 10; i++); )时,就可以在循环中运行--这将不断增加i,直到条件返回false为止,任何数字都可以替换10甚至一个变量。但一旦条件不再满足,它就会退出。这是最好再次使用循环,你知道如何他们应该停止。 虽然Loops允许您在它中添加更多的灵活性,当它停止时(如while ( i < 10) ),您也可以在布尔值(true/false)中替换10以及许多其他类型的变量。 两者之间的主要区别在于它们之间的组织结构,如果要增加到10,那么使用for语句就会更加简洁和可读性更强,但另一方面,如果在循环参数中使用程序中的现有变量,那么只使用while循环就更清晰了。在For循环中,您必须创建一个新变量,而对于While循环则不是这样。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39007464

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档