JavaScript教程:for、while循环语句

概述

循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,

需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形 成死循环。

for循环语句

格式

for(表达式1;表达式2;表达式3){
    语句体
}

表达式解释:

表达式 描述 例子
表达式1 一般为赋值语句。可以不写 int i=0
表达式2 条件语句,必须返回boolean型。可以不写 i < 10
表达式3 迭代语句。可以不写 i++

执行流程

  1. 第一次执行,先执行 表达式1,再执行 表达式2,如果 表达式2 为true,则执行 语句体,然后执行表达式3;如果 表达式2 为false,跳出for语句。

  2. 以后循环,执行表达式2,如果 表达式2 为true,则执行 语句体,然后执行表达式3;如果 表达式2 为false,跳出for语句。

  3. 表达式1仅第一次执行,以后不再执行。

例子

   //控制台输出10次HelloWorld
   //定义变量从0开始,循环条件为<10
    for(var x = 0; x < 10; x++) {
        console.log("HelloWorld"+x);
     }

练习

计算1+2+3+…+100

//1.定义一个初始化变量,记录累加求和,初始值为0
int sum = 0;
//2.利用for循环获取1‐100之间的数字
for (var i = 1; i <= 100; i++) {
    //3.累加求和
    sum += i;
}
//5.循环结束之后,打印累加结果
console.log("sum:" + sum);
}

while 循环语句

格式:

while( 布尔表达式 ) {
  //循环内容
}

只要布尔表达式为 true,循环就会一直执行下去。

执行流程

例子

while循环输出10次HelloWorld

//while循环实现打印10次HelloWorld
//定义初始化变量
var i = 1;
//循环条件<=10
while(i<=10){
    console.log("HelloWorld"+i);
    i++;
}

练习

while循环计算1-100之间的和

//定义一个变量,记录累加求和
var sum = 0;
//定义初始化表达式
var i = 1;
//使用while循环让初始化表达式的值变化
while(i<=100){
    //累加求和
    sum += i ; //步进表达式改变变量的值
    i++;
}
//打印求和的变量
console.log("sum:"+sum);

do…while 循环语句

格式

do {
    //代码语句
}while(布尔表达式);

do…while 循环和 while 循环相似,不同的是:do…while 循环至少会执行一次。

注意: while后面有分号;,必须写,否则报错

执行流程

练习

输出10次HelloWorld

var x=1;
do {
    console.log("HelloWorld"+x);
    x++;
}while(x<=10);

注意:
即使将循环条件直接写成false,也依然会循环一次。
所以循环具有一定的风险性,因此初学者 不建议 使用do…while循环。

do{
    console.log("无条件执行一次"); 
}while(false);

for VS while

  • 控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继 续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消 失,能够提高内存的使用效率。
  • 在已知循环次数的时候使用推荐使用for,循环次数未知的时推荐使用while。

死循环(无限循环)

也就是循环中的条件永远为true,循环永不结束。例如:

while(true){
    console.log("hello world");
}

在后期的开发中,会出现使用死循环的场景

例如:我们需要读取用户输入的输入,但是用户输入多少数据,我们并不清楚,只能使用死循环,当用户不想输入数据了,就可以结束循环了,如何去结束一个死循环呢,就需要使用break跳出语句了。


原文出处:/show_1IX3A5WcvBTX.html