JavaScript switch语句

除了if ... else之外,JavaScript还有一个称为switch语句的功能。 switch是一种条件语句,它将针对多种可能的情况评估表达式,并根据匹配的情况执行一个或多个代码块。 switch语句与包含许多其他if块的条件语句密切相关,并且它们通常可以互换使用。

在本教程中,我们将学习如何使用switch语句,以及如何使用相关的关键字case,break和default。 最后,我们将介绍如何在switch语句中使用多个case。

流程图

switch 语句根据表达式 expr 的值,依次与 case 后表达式的值进行比较,如果相等,则执行其后的语句段,只有遇到 break 语句,或者 switch 语句结束才终止;如果不相等,则继续查找下一个 case。switch 语句包含一个可选的 default 语句,如果在前面的 case 中没有找到相等的条件,则执行 default 语句,它与 else 语句类似。

switch 语句流程控制示意如图所示:

JavaScript switch语句_第1张图片

语法

JavaScript中switch语句的语法为:

switch (expr) {
   case value1:
     // statements to execute when expr matches value1
     break;

   case value2:
     // statements to execute when expr matches value2
     break;

   case value_n:
     // statements to execute when expr matches value_n
     break;

   default:
     // statements to execute when expr does not match any of the values
}

参数说明

  1. expr  一个表达式,其值与一组值(即:value1,value2,... value_n)进行比较。
  2. value1,value2,...value_n  这些是与expr比较的值。这些值前面带有case关键字,并按列出的顺序进行判断。一旦值与expr匹配,switch语句将执行相应的语句。重要的是要注意,switch语句使用===运算符执行比较,这意味着expr必须等于该以及相同的数据类型才能被视为匹配项。
  3. break 可选的。break语句通常出现在每个代码块的末尾。它用于终止switch语句。这意味着switch语句中的其他值将不会与expr进行比较。如果不包含break语句,JavaScript将继续评估switch语句中的下一个值,您可能会得到意外的结果。
  4. default 可选的。如果没有任何值(即value1,value2,.. value_n)与expr没有匹配,则将执行该代码块。如果在switch语句的末尾找到了默认标签,则不必包括break语句。

注意事项

  • switch语句将执行与expr匹配的第一个值的代码块。break语句将结束该switch块,switch语句终止EXPR
  • 如果没有值与expr匹配,则将执行switch语句default部分中的代码块(如果存在)。

例子

以下是在JavaScript中使用switch语句的示例:

// Set the TechOnTheNet technology to JavaScript
var totn_technology = 'JavaScript';

switch (totn_technology) {
   case 'SQL':
     console.log('TechOnTheNet SQL');
     break;

   case 'JavaScript':
     console.log('TechOnTheNet JavaScript');
     break;

   default:
     console.log('Other TechOnTheNet technologies');
}

在这个switch语句示例中,代码将根据totn_technology变量的值执行不同的语句。由于totn_technology变量已设置为字符串“ JavaScript”,因此将执行与case 'JavaScript'关联的语句。

在此示例中,以下内容将输出到Web浏览器控制台:

TechOnTheNet JavaScript

共享代码块

在JavaScript中,您还可以在值之间共享代码块。

例如:

// Set the TechOnTheNet technology to JavaScript
var totn_technology = 'JavaScript';

switch (totn_technology) {
   case 'SQL':
     console.log('TechOnTheNet SQL');
     break;

   case 'JavaScript':
   case 'HTML':
     console.log('TechOnTheNet Web Development');
     break;

   default:
     console.log('Other TechOnTheNet technologies');
}

在此示例中,值“ JavaScript”和“ HTML”共享一个代码块。由于totn_technology变量已设置为字符串'JavaScript',所以switch语句将执行此共享代码块并将以下内容输出到Web浏览器控制台:

TechOnTheNet Web Development

好了, 以上是本文所有内容,希望对大家有所帮助,也希望大家对码农之家多多支持,你们的支持是我创作的动力!祝大家生活愉快!  

 

你可能感兴趣的:(javascript,开发语言)