首页 > 代码库 > switch语句
switch语句
当我们发现自己在if表达式中使用了太多的else if子句时,就应该要考虑使用switch语句来替代if了。
看下面的例子:
result获取到的是文本框输入的值,typ="text"输出的是字符串类型的值
我们这里定义了变量a="1",将result去跟a比较,如果一样就会弹出警示框
我们来分析一下,switch表达式主要由那几部分组成。
1??括号中的表达式。它通常会是一个变量,也可以是其他任何能提供返回值的东西。就是switch()这个括号中的内容。
2??包含在大括号case序列块。
每个case语句后面有一个表达式,该变大时的结果将会与switch语句的表达式进行对比。如果对比的结果为true,则case语句中冒号之后的代码将会被执行。
3??break语句,它实际上是case块的结束符,即当代码执行到break语句时,整个switch语句就执行完成了。
4??如果case条件都不为true,default条件就会被执行。
换句话说,整个switch语句的执行应该可以分为以下几个步骤:
1??对switch语句后面的括号部分进行求值,并记录结果
2??移动到第一个case条件,将它的值与步骤1的结果进行对比
3??如果步骤2中的比对结果为true,则执行该case块中的代码
4??在相关case块执行完成之后,如果遇到break语句就直接退出switch
5??如没有遇到break或步骤2中的对比结果为false,就步骤2中的比对结果为false,就继续下一个case块
6??重复步骤2到5中的操作
7??如果依然还没有结束(也就是始终未能按照步骤4中的方式退出,就执行default语句后面的代码块)
switch语句