循环知识点总结
1、while循环
-
while
循环适用于未知循环次数,只要满足条件,就会一直执行循环体中的代码块。 -
语法结构:
while (条件) { 代码块 };
-
条件
为真时,执行循环体中的代码块;条件为假时,跳出循环。 -
可能需要在循环中手动更新变量或条件,以避免无限循环。
-
例如:声明一个变量count ,对count进行循环判断,如果小于5就输出,当count大于5时,不在循环:
var count = 0; while (count < 5) { console.log("Count:", count); count++; }
2、do-while循环
-
do-while
循环也适用于未知循环次数,类似于while
循环,但保证至少执行一次循环体中的代码块。 -
语法结构:
do { 代码块 } while (条件);
-
首先执行循环体中的代码块,然后判断
条件
,如果满足则继续执行下一轮循环,否则跳出循环。 -
例如:声明一个变量count,首先对count进行判断,并打印输出,当循环到count大于5时,不在循环:
var count = 0; do { console.log("Count:", count); count++; } while (count < 5);
3、for循环
-
for
循环适用于已知循环次数的情况。 -
语法结构:
for (初始化表达式; 条件判断; 表达式操作) { 代码块 };
-
初始化
段用于设置循环变量的初始值。 -
条件
段用于判断是否继续执行循环,只有条件满足时,才会执行循环体中的代码块。 -
循环变量
段用于更新循环变量的值,通常是递增或递减操作。 -
每次循环,先执行
初始化
段,再检查条件
,如果满足则执行循环体中的代码块,之后执行循环变量
段,重复以上步骤。 -
例如:使用 for 循环迭代一个从0到4的数字序列:
for (let i = 0; i < 5; i++) { console.log("Index:", i); } console.log(i) //报错 :由于在 for 循环中使用了 let 关键字声明变量 i,i 的作用域被限定在 for 循环的大括号内。因此,在 for 循环外部,访问变量 i 是不可能的,这就是为什么执行 console.log(i) 时会报错的原因。 //如果想要在循环外部使用 i 的值,可以在循环外部声明 let i,然后在循环内部仅使用 i = 0 即可。
4、循环控制语句
-
break
语句用于跳出循环,立即终止循环执行,程序流程将继续执行循环后的代码。 -
continue
语句用于跳过当前循环的剩余代码,立即进入下一次循环。 -
这两个语句通常配合条件判断语句使用,用于控制循环的执行流程。
例如:
-
使用
break
语句跳出循环:for (let i = 1; i <= 10; i++) { if (i == 5) { break; } console.log(i); }
在这个例子中,
for
循环从 1 到 10 遍历变量i
。当i
的值等于 5 时,break
语句被触发,跳出循环,终止了后续迭代。因此,只会输出 1、2、3、4。 -
使用
continue
语句跳过当前迭代:for (let i = 1; i <= 10; i++) { if (i % 2 == 0) { continue; } console.log(i); }
在这个例子中,
for
循环从 1 到 10 遍历变量i
。当i
的值是偶数时,continue
语句被触发,直接跳过当前迭代,并进入下一次迭代。因此,只会输出奇数(即 1、3、5、7、9)。
-
5、嵌套循环
-
在循环体中嵌套循环,即一个循环内包含另一个循环。
-
嵌套循环可以多层嵌套,用于处理多维数据结构或实现复杂的重复操作。
-
注意嵌套循环的层次与循环变量的命名,避免产生混淆。
例如:
- 嵌套
for
循环打印等腰三角形:
var num = 5; // 三角形的行数 var char = "*"; // 三角形的字符 // 外层循环控制行数 for (var i = 1; i <= num; i++) { var row = ""; // 每一行的字符 // 内层循环控制每一行的字符数 for (var j = 1; j <= num - i; j++) { row += " "; // 添加空格字符 } for (var k = 1; k <= 2 * i - 1; k++) { row += char; // 添加字符 } console.log(row); // 打印每一行 }
在这个示例中,外层的
for
循环控制乘法表的行数,内层的for
循环控制每行输出的乘法表达式。外层循环迭代一次,内层循环就会完成一次乘法表的输出。输出内容如下:* *** ***** ******* *********
- 嵌套
更多例题请关注:陈小兿