麻烦高手帮忙解释一下:JS中 for(i=0, c=0;i<6;i++,tn*=20) { 执行代码}?

我的理解如下,不知理解是否正确?1、i=0,c=0;这一句是给i和c设置初始值;2、i<6;是设置循环的上限;3、i++,就是执行代码后,i+1但是i++,其后的tn*=... 我的理解如下,不知理解是否正确?
1、i=0, c=0; 这一句是给i 和c 设置初始值;
2、i < 6; 是设置循环的上限;
3、i++,就是执行代码后,i+1
但是i++,其后的 tn *=20,我的理解是i=0 时不执行,其后的全部执行,也就是相当于:
for(i=0, c=0; i<6; i++) if(i > 0) tn *=20 {执行代码}

还是:tn*=20, 在i = 0 时不执行,在i>0 时,tn*=20不参与循环??
展开
 我来答
懂点君
高粉答主

2020-07-16 · 分享各种知识,从此让你多懂点,少吃亏!
懂点君
采纳数:197 获赞数:4794

向TA提问 私信TA
展开全部

您的理解有误,for循环的执行顺序如下:

for ([initialization]; [condition]; [final-expression])  {

   statement

}

  • initialization

    一个表达式 (包含赋值语句) 或者变量声明。典型地被用于初始化一个计数器。该表达式可以使用 var 或 let 关键字声明新的变量,使用 var 声明的变量不是该循环的局部变量,而是与 for 循环处在同样的作用域中。用 let 声明的变量是语句的局部变量。该表达式的结果无意义。

  • condition

    一个条件表达式被用于确定每一次循环是否能被执行。如果该表达式的结果为 true,statement 将被执行。这个表达式是可选的。如果被忽略,那么就被认为永远为真。如果计算结果为假,那么执行流程将被跳到 for 语句结构后面的第一条语句。

  • final-expression

    每次循环的最后都要执行的表达式。执行时机是在下一次 condition 的计算之前。通常被用于更新或者递增计数器变量。

  • statement

    只要condition的结果为true就会被执行的语句。要在循环体内执行多条语句,使用一个块语句({ ... })来包含要执行的语句。没有任何语句要执行,使用一个空语句(;)。


因此,您的代码可以这么理解;

  1. initialization,初始化i和c的值,这个只执行1次;

  2. condition,判断i < 6的布尔值,为true时,执行statement,再执行final-expression,为false时,for循环结束;

  3. 当 i = 0时, condition布尔值为true,执行statement,然后再执行i++, tn * =20;(以此类推)

  4. 当i = 6时,condition布尔值为false,for循环结束

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式