视频加载失败

JavaScript流程控制语句

1259 字
6 分钟
JavaScript流程控制语句

JavaScript 中,流程控制语句用于控制代码的执行顺序,主要分为两大类:

  • 条件判断:if...else、switch、三元运算符,根据条件决定执行哪些代码。
  • 循环控制:for、while、do...while,让代码重复执行。

if…else 条件判断语句#

if...else 用于根据条件是否成立,决定执行不同的代码。

基本语法#

if (条件表达式) {
// 条件为 true 时执行
} else {
// 条件为 false 时执行
}

示例:

let age = 18;
if (age >= 18) {
console.log("成年人");
} else {
console.log("未成年人");
}

多条件判断#

通过 else if 可以判断多个条件。

let score = 85;
if (score >= 90) {
console.log("优秀");
} else if (score >= 80) {
console.log("良好");
} else if (score >= 60) {
console.log("及格");
} else {
console.log("不及格");
}

注意:

  • 条件表达式会转换为布尔值进行判断。
  • 从上往下依次判断,命中第一个成立的条件后,跳过后续分支。
  • else if 和 else 都是可选的。
  • 建议始终使用 {} 包裹代码块。

switch 多分支选择语句#

switch 用于将一个表达式的值与多个 case 进行匹配。

基本语法#

switch (表达式) {
case 值1:
// 匹配值1时执行
break;
case 值2:
// 匹配值2时执行
break;
default:
// 都不匹配时执行
}

示例:

let day = 3;
switch (day) {
case 1:
console.log("星期一");
break;
case 2:
console.log("星期二");
break;
case 3:
console.log("星期三");
break;
default:
console.log("其他日期");
}

输出:星期三

break 的作用#

break 用于结束当前 switch 语句。

如果不写 break,程序会继续执行后面的 case 代码,这种行为称为穿透(fall-through)。

let num = 1;
switch (num) {
case 1:
console.log("一");
case 2:
console.log("二");
default:
console.log("其他");
}

输出:

一
二
其他

多个 case 共用代码#

let day = 6;
switch (day) {
case 6:
case 7:
console.log("周末");
break;
default:
console.log("工作日");
}

输出:周末

注意: switch 使用严格相等(===)的匹配规则,不会自动将字符串 "1" 转换为数字 1。

三元运算符#

三元运算符 ? : 是一种根据条件返回不同结果的表达式,可以简化简单的 if...else 判断。

基本语法#

条件表达式 ? 表达式1 : 表达式2;
  • 条件为 true:返回表达式1的结果。
  • 条件为 false:返回表达式2的结果。

示例:

let age = 18;
let result = age >= 18 ? "成年人" : "未成年人";
console.log(result); // 成年人

等价于:

let age = 18;
let result;
if (age >= 18) {
result = "成年人";
} else {
result = "未成年人";
}

嵌套三元运算符#

let score = 85;
let result = score >= 90
? "优秀"
: score >= 60
? "及格"
: "不及格";
console.log(result); // 及格

虽然三元运算符支持嵌套,但复杂条件推荐使用 if...else,可读性更好。

for 循环语句#

for 循环适合循环次数已知或可以明确控制的场景。

基本语法#

for (初始化表达式; 条件表达式; 更新表达式) {
// 循环执行的代码
}

使用示例#

for (let i = 1; i <= 5; i++) {
console.log(i);
}

输出:

1
2
3
4
5

执行过程:

循环i 的值条件 i <= 5结果
第1次1true输出1
第2次2true输出2
第3次3true输出3
第4次4true输出4
第5次5true输出5
第6次6false结束循环

遍历数组#

const arr = ["HTML", "CSS", "JavaScript"];
for (let i = 0; i < arr.length; i++) {
console.log(arr[i]);
}

输出:

HTML
CSS
JavaScript

while 循环语句#

while 循环会先判断条件,条件成立才执行循环体。

通常适用于循环次数不确定,需要根据条件决定是否继续执行的场景。

基本语法#

while (条件表达式) {
// 条件成立时重复执行
}

使用示例#

let i = 1;
while (i <= 5) {
console.log(i);
i++;
}

输出:

1
2
3
4
5

注意:

  • 先判断条件,再执行循环体。
  • 如果第一次判断条件不成立,则一次都不会执行。
  • 要确保循环条件最终能够变为 false,避免死循环。

例如:

let i = 10;
while (i < 5) {
console.log(i);
}

因为条件一开始就不成立,所以不会输出任何内容。

do…while 循环语句#

do...while 与 while 类似,但它会先执行一次循环体,再判断条件。

基本语法#

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

使用示例#

let i = 1;
do {
console.log(i);
i++;
} while (i <= 5);

输出:

1
2
3
4
5

与 while 的区别#

// while
let a = 10;
while (a < 5) {
console.log("while执行");
}
// do...while
let b = 10;
do {
console.log("do...while执行");
} while (b < 5);

结果:

  • while:不会执行。
  • do...while:执行一次。

循环控制语句 break 和 continue#

这两个关键字可以用于 for、while 和 do...while 循环。

break 结束循环#

for (let i = 1; i <= 5; i++) {
if (i === 3) {
break;
}
console.log(i);
}

输出:

1
2

当 i === 3 时,直接结束整个循环。

continue 跳过本次循环#

for (let i = 1; i <= 5; i++) {
if (i === 3) {
continue;
}
console.log(i);
}

输出:

1
2
4
5

当 i === 3 时,跳过本次循环剩余的代码,继续下一轮。

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

JavaScript流程控制语句
https://f.youzi177.cn/posts/2026101901javascript-liu-cheng-kong-zhi-yu-ju/
作者
小封鸭
发布于
2026-10-18
许可协议
CC BY-NC-SA 4.0

评论区

Profile Image of the Author
小封鸭
小楼一夜听春雨,深巷明朝卖杏花
公告
欢迎来到我的博客。这里主要记录前端全栈和日常内容
分类
标签
最新动态
站点统计
文章
60
分类
3
标签
12
总字数
107,734
运行时长
0 天
最后活动
0 天前
站点信息
构建平台
EdgeOne Pages
博客版本
Firefly v6.16.8
文章许可
CC BY-NC-SA 4.0
文章目录