JavaScript Switch 语句

2025年3月29日 | 阅读 4 分钟

JavaScript 中的 Switch Case 是什么?

在 JavaScript 中,switch case 是一种条件语句,用于根据其条件或不同的条件来执行语句。

switch case 语句用于根据程序中存在的条件或用户提供的条件执行不同的操作。

换句话说,switch 语句会评估条件,将其与一系列 case 进行匹配,如果条件匹配,则执行相应的语句。如果条件与任何 case 都不匹配,则会执行 default 条件。

在 JavaScript 中,switch case 语句是 if else 条件的替代方法。

JavaScript switch 语句用于从多个表达式中执行一个代码。但它比 if else if 方便,因为它可以与数字、字符等一起使用。

语法

让我们看看 JavaScript 中 Switch case 语句的语法

Break 语句

在 JavaScript 中,break 关键字用于 switch case 语句中,该语句表示 switch 语句的特定 case 的结束。在 switch 语句中,如果缺少 break 语句,则解释器将继续执行后续每个 case 中的语句。

Default 语句

在 JavaScript 中,default 关键字用于 switch 语句中定义默认表达式。在 JavaScript 中,当任何 case 与 switch-case 语句的表达式不匹配时,它将执行 default 代码块。

示例

让我们来看一个 JavaScript 中 switch case 语句的简单程序

输出

JavaScript Switch

示例 2

输出

JavaScript Switch

Switch 语句如何工作?

求值

在 JavaScript 中,在 switch case 语句中,我们只评估一次表达式。

比较

在 JavaScript 中,当我们使用 switch 语句时,表达式的值会与每个 case 使用严格相等性进行比较。

执行

在 JavaScript 中,如果找到 switch case 表达式的匹配项,则将执行与匹配表达式对应的代码块。如果没有找到表达式匹配项,则执行将跳转到 default case,否则将继续执行 switch 块之后的下一个语句。

Break 语句

在程序中执行完代码块后,break 语句可以终止 switch 语句,防止执行继续到后续的 case。

在 JavaScript 中,当省略 break 语句时,执行将继续到下一个 switch case,这也被称为“fall through”(穿透)。

Default Case

在 JavaScript 中,default case 是可选的,这意味着它取决于程序员是否想使用它。如果没有在代码中找到匹配项,则会执行 default case 下的代码块。

if-else 和 switch 语句的区别

语法

Switch 语句: 在 JavaScript 中,它使用 switch 关键字,后面跟着一对括号,括号内有一个表达式,以及一系列 case 语句。

If-else 语句: 它使用 if 关键字,后面跟着括号内的条件和一个可选的 else 子句。

目的

Switch 语句: 在 JavaScript 中,switch 语句检查单个表达式是否与多个 case 匹配,并根据哪个 case 与语句匹配来执行语句。

If-else 语句: 在 JavaScript 中,if 语句检查单个条件,并根据条件是真还是假来执行不同的代码块。

情况

Switch 语句: 在 JavaScript 中,switch 语句可以有多个 case,每个 case 可以有一个不同的值来匹配表达式。

If-else 语句: 在 if-else 语句中,我们只有两个可能的代码块:一个用于真条件,另一个用于假条件。

默认

Switch 语句: 在 JavaScript 中,如果程序中没有与表达式匹配的 case 语句,我们可以包含一个 default 语句来执行。

If-else 语句: 在 JavaScript 中,我们可以包含 else 语句来执行条件为假的代码。

效率

Switch 语句: 如果需要检查的 case 较多,与 if-else 语句相比,它可能更有效率。

If-else 语句: 由于有多个 case 或条件,与 switch 语句相比,它可能效率较低。

可读性

Switch 语句: 在 JavaScript 中,如果需要检查的语句较多,与 if-else 语句相比,switch 语句可能更易于阅读。

If-else 语句: 在 JavaScript 中,与 switch 语句相比,if-else 条件在处理复杂条件时可能更灵活、更强大。

总而言之,switch 语句和 if-else 语句都有其优点和缺点,我们可以根据程序的具体要求或开发者的偏好来选择它们。


下一个主题Javascript 循环