JavaScript

JS switch case语句简介说明

下文笔者讲述switch case语句的功能及简介说明,如下所示

switch case语句简介

switch case语句的功能:
     同if,else if,else语句进行多分支条件判断
	 但是switch case具有更清晰的结构

switch case语法结构:
    switch (表达式){
    case value1:
        statements1  //当表达式的结果等于 value1 时,则执行该代码
        break;
    case value2:
        statements2  //当表达式的结果等于 value2 时,则执行该代码
        break;
    ......
    case valueN:
        statementsN  //当表达式的结果等于 valueN 时,则执行该代码
        break;
    default :
        statements  //当没有与表达式相同的值,则执行该代码
   }

switch语句的说明

switch语句根据表达式的值
    依次与case子句中的值进行比较
    当两者相等,则运行其后的语句段
    当遇到break关键字时则跳出整个switch语句
    当不相等,则继续匹配下一个case

switch语句包含一个可选default 关键字
    当在前面case中没有找到相等的条件,则执行default后面语句段

switch case语句其他关键字说明

break 关键字的功能

break关键字的功能:
     用于跳出switch语句,当然break还可以跳出for,for in ,while,do while等运行语句

switch关键字是按行运行
     当switch遇到一个匹配成功的case语句时,此时我们不想程序继续向下运行,则需要在case的末尾加上break关键字
	 达到switch关键字运行完毕的效果
例:JavaScript正确的case语句
switch (id) {
    case 1 :
        console.log("id=====1");
        break;  //停止执行,跳出switch
    case 2 :
        console.log("id=====2");
        break;  //停止执行,跳出switch
    case 3 :
        console.log("id=====3");
        break;  //停止执行,跳出switch
    default :  //上述条件都不满足时,默认执行的代码
        console.log("id不是1,2,3 !");
}

case 子句

case 语句:
     后面跟上具体的条件代码
case 语句:
     后面也可以省略
var id = 1;
switch (id) {
    case 1 :
    case 2 :
        console.log("id ===2");
        break;
    case 3 :
        console.log("id ===3");
        break;
    default : 
        console.log("id不等于2,也不等于3");
以上代码会输出  “id不等于2,也不等于3”
    由于第一个case满足条件,但是没有break
	 所以还会继续向下运行

default语句

default是switch子句
   位于switch内任意位置
    不会影响其它 case 子句的正常执行

注意事项:
    default后面还有case语句
	default后面需加上break关键字
	 否则default后的case会运行
var id = 1;
switch (id) {
    default : 
        console.log("default");
        break;
    case 1 : 
        console.log("===1===");
        break;
    case 2 :
        console.log("===2===");
        break;
    case 3 :
        console.log("===3===");
        break;
}


//例2

var id = 3;
switch (id) {
    default : 
        console.log("default");
    case 1 :
        console.log("===1===");
    case 2 :
        console.log("===2===");
}