4.8.6 JavaScript switch...case语句

switch语句语法

switch(条件表达式)
{
    case 常量:
    {
        语句a;
    }
    case 常量:
    {
        语句b;
    }
    case 常量:
    {
        语句c;
    }
    ...
    case 常量:
    {
        语句f;
    }
    default:
    {
        语句n;
    }
}

switch语句语法说明

  • 顺序执行case后面的每个语句,最后执行default下面的语句n
  • 每个case后面的语句可以是多条,但要使用{}包括
  • 每个case后面的值必须互不相同。

示例

var a =3;
switch(a)
{
    case 0:
    {
        document.write("www");
    }
    case 1:
    {
        document.write("dreamdu");
    }
    case 2:
    {
        document.write("com");
    }
    case 3:
    {
        document.write("www.dreamdu.com");
    }
    default:
    {
        document.write("http://www.dreamdu.com");
    }
}

结果

www.dreamdu.com
http://www.dreamdu.com

完整的switch语句语法

上面的结果通常不是我们想要的,如果执行完某个case后面的语句,应该跳出switch语句,这才是真正的switch多分支选择语句。可以在每个分支后面加上break(跳出),后面章节将介绍break。

switch(条件表达式)
{
    case 常量:
    {
        语句a;
    }
    break;
    case 常量:
    {
        语句b;
    }
    break;
    case 常量:
    {
        语句c;
    }
    break;
    ...
    case 常量:
    {
        语句f;
    }
    break;
    default:
    {
        语句n;
    }
}

当"表达式"的值与某个case后面的常量相等时,就执行常量后面所执行的语句,之后跳出switch分支选择语句,当所有的case后面的常量都不符合"表达式"时,执行default后面的语句n。

示例

var a =3;
switch(a)
{
    case 0:
    {
        document.write("www");
    }
    break;
    case 1:
    {
        document.write("dreamdu");
    }
    break;
    case 2:
    {
        document.write("com");
    }
    break;
    case 3:
    {
        document.write("www.dreamdu.com");
    }
    break;
    default:
    {
        document.write("http://www.dreamdu.com");
    }
}

switch...case语句

结果:

www.dreamdu.com

JavaScript switch...case语句示例 -- 可以尝试编辑

猴子提示: case后面一定要是常量(就是一个不可变的量)!

猴子提示: 当条件的分支很多时(通常超过六个)使用switch...case的效率将高于多重if_else语句(在汇编层switch...case是查找表,if语句是跳转:)



  • 教程中有什么不懂的地方?发现教程的错误!对教程有什么建议!快快联系猴子呀dreamdu@163.com,:)
赞助梦之都