概述
循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,
需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形 成死循环。
for循环语句
格式
for(表达式1;表达式2;表达式3){
语句体
}
表达式解释:
| 表达式 | 描述 | 例子 |
|---|---|---|
| 表达式1 | 一般为赋值语句。可以不写 | int i=0 |
| 表达式2 | 条件语句,必须返回boolean型。可以不写 | i < 10 |
| 表达式3 | 迭代语句。可以不写 | i++ |
执行流程
第一次执行,先执行 表达式1,再执行 表达式2,如果 表达式2 为true,则执行 语句体,然后执行表达式3;如果 表达式2 为false,跳出for语句。
以后循环,执行表达式2,如果 表达式2 为true,则执行 语句体,然后执行表达式3;如果 表达式2 为false,跳出for语句。
表达式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跳出语句了。


