js中for循环、while循环、do...while循环


上次写js基础案例时有涉及到js中的循环,今天我们具体讲讲js中的for循环、while循环以及do…while循环。

1.语法结构

(1)for循环

for(初始化变量; 条件表达式; 操作表达式 ){
 //循环体(需要循环的代码块);
  }

(2)while循环

while (条件表达式) {
 // 循环体代码 ;
 }

(3)do…while循环

do {
// 循环体代码 ---条件表达式为 true 时重复执行循环体代码 
} while(条件表达式);

2.循环执行过程

(1)for循环的执行流程:

1.执行初始化表达式—只执行一次 如:(let i=0;)
2.判断循环条件表达式是否为true,如果为true,执行循环体, 如:(i>=5;)
如果为false,跳出循环,执行后面的语句
3.当循环体语句执行完成后,再执行步进表达式 如:(i++;)
4.再次判断循环条件表达式是否为true,如果为true,执行循环体,如果为false,跳出循环,执行后面的语句

(2)whlie循环的执行流程:

1.计数器初始化 例:如:(let i=0;)
2.判断条件表达式是否成立 如:(i>5)
如果成立,执行语句块,执行步进表达式如:(i++;)
3.再次判断条件表达式是否成立,
如果成立,执行语句块,
如果不成立,循环结束。

(3)do…whlie循环的执行流程:

1.计数器初始化如:(let i=0;)
2.执行do语句块
3.判断条件表达式是否成立 如:(i>12)
如果成立,执行语句块,执行步进表达式如:(i++;)
如果不成立,循环结束。

3.小练习

(1)用for循环输出1-100之间能被3和7整除的所有数的和及平均值

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <!-- JavaScript编程:求1-100之间能被37整除的所有数的和及平均值 -->
    <script>
      let sum = 0;
      let aver = 0;
      let count = 0;
      for (let i = 1; i <= 100; i++) {
        if (i % 3 === 0 && i % 7 === 0) {
          sum = sum + i;
          count++;
        }
      }
      aver = sum / count;
      document.write(
        "1-100之间能被3和7整除的所有数的和为:" + sum + ",平均值为:" + aver
      );
    </script>
  </body>
</html>

(2)用while循环输出1-100之间能被3和7整除的所有数的和及平均值

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <!-- JavaScript编程:求1-100之间能被37整除的所有数的和及平均值 -->
    <script>
      let sum = 0;
      let aver = 0;
      let count = 0;
      let i = 1;
      while (i <= 100) {
        if (i % 3 === 0 && i % 7 === 0) {
          sum += i;
          count++;
        }
        i++;
      }
      aver = sum / count;
      document.write(
        "1-100之间能被3和7整除的所有数的和为:" + sum + ",平均值为:" + aver
      );
    </script>
  </body>
</html>

(3)用do…while循环输出1-100之间能被3和7整除的所有数的和及平均值

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <!-- JavaScript编程:求1-100之间能被37整除的所有数的和及平均值 -->
    <script>
   	  let sum = 0;
      let aver = 0;
      let count = 0;
      let i = 1;
      do {
        if (i % 3 === 0 && i % 7 === 0) {
          sum += i;
          count++;
        }
        i++;
      } while (i <= 100);
      aver = sum / count;
      document.write(
        "1-100之间能被3和7整除的所有数的和为:" + sum + ",平均值为:" + aver
      );
    </script>
  </body>
</html>

4.小结

最后,我们来总结一下:
对于for循环,必须在循环条件前后必须加上';',否则会显示语法错误。若循环体如包括有一个以上的语句,则必须用'{}'括起来,组成复合语句。
对于while循环,while语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非0)即可继续循环。若循环体如包括有一个以上的语句,则必须用'{}'括起来,组成复合语句。
对于do…while循环,则至少要执行一次循环语句
for,while,do-while循环使用的区别: 一般循环次数明确,则使用for循环,一般不知道我们需要执行多少次,不知道循环什么时候结束,则使用while循环。
总之,for 和 while 都是循环方法。具体在什么情况下使用,要根据需求的不同。对于不知道要具体循环多少次时。用while方法,当知道具体的循环次数时,就用for方法

  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值