📅  最后修改于: 2023-12-03 15:31:46.127000             🧑  作者: Mango
在 JavaScript 中,循环语句是一种重要的结构,它可使我们重复执行一段代码,从而减少了冗余的代码。JavaScript 中有两种循环语句:for 循环和 while 循环。
for 循环是一种常用的循环形式,可以用于重复执行指定次数的代码块。它的语法格式如下:
for (初始化表达式; 条件表达式 ; 递增表达式) {
// 待执行的代码块
}
其中,初始化表达式用于初始化计数器,条件表达式用于判断循环是否需要继续执行,递增表达式会在每次循环后执行,以更新计数器的值。例如:
for(let i = 0; i < 5; i++) {
console.log(i);
}
该循环会输出 0 到 4 这五个数字。
注意,初始化表达式和递增表达式是可选的,如果不需要使用,可省略不写,如:
let i = 0;
for (; i < 5;) {
console.log(i);
i++;
}
while 循环是另一种常用的循环形式,可以用于重复执行一段代码块,直到某个条件不再为真为止。它的语法格式如下:
while (条件表达式) {
// 待执行的代码块
}
当条件表达式的值为 true 时,会重复执行 while 循环中的代码块,直到条件表达式的值为 false 为止。例如:
let i = 0;
while (i < 5) {
console.log(i);
i++;
}
该循环也会输出 0 到 4 这五个数字。
与 while 循环类似的还有 do...while 循环,该循环会至少执行一次代码块,然后在条件满足的情况下重复执行。它的语法格式如下:
do {
// 待执行的代码块
} while (条件表达式);
该循环会先执行一次代码块,然后再检查条件表达式的值,如果为 true 就重复执行循环,否则结束循环。例如:
let i = 0;
do {
console.log(i);
i++;
} while (i < 5);
该循环同样会输出 0 到 4 这五个数字。
在循环中,还有几个控制语句可用于更方便地控制循环的执行过程,它们分别是 break
、continue
和 label
:
break
:用于立即退出循环,不再执行循环中的剩余代码块。continue
:用于跳过本次循环中的剩余代码块,继续执行下一次循环。label
:用于给代码块添加一个标签,方便在嵌套循环中进行控制和跳转。例如,我们可以使用 break 语句来在找到目标元素时立即退出循环:
const arr = [1, 2, 3, 4, 5];
for (let i = 0; i < arr.length; i++) {
if (arr[i] === 3) {
console.log('找到元素:' + arr[i]);
break;
}
console.log('当前处理元素:' + arr[i]);
}
该循环会输出以下内容:
当前处理元素:1
当前处理元素:2
找到元素:3
我们还可以使用 continue 语句来跳过某些情况下不需要处理的元素:
const arr = [1, 2, 3, 4, 5];
for (let i = 0; i < arr.length; i++) {
if (arr[i] % 2 === 0) {
console.log(arr[i] + ' 是偶数');
continue;
}
console.log(arr[i] + ' 是奇数');
}
该循环会输出以下内容:
1 是奇数
2 是偶数
3 是奇数
4 是偶数
5 是奇数
最后,我们还可以使用 label 语句在嵌套循环中控制循环的执行过程:
labelName:
for (let i = 0; i < 5; i++) {
for (let j = 0; j < 5; j++) {
if (i === 3 && j === 3) {
break labelName;
}
console.log('i=' + i + ', j=' + j);
}
}
该循环会输出以下内容:
i=0, j=0
i=0, j=1
i=0, j=2
i=0, j=3
i=1, j=0
i=1, j=1
i=1, j=2
i=1, j=3
i=2, j=0
i=2, j=1
i=2, j=2
i=2, j=3