• switch语句


    CreateTime--2017年7月13日08:40:07
    Author:Marydon

    switch语句

    参考链接:http://www.w3school.com.cn/js/pro_js_statements_switch.asp

    switch 语句是 if 语句的兄弟语句。

    一、switch语句介绍

    语法:

    switch (expression)
      case value: statement;
        break;
      case value: statement;
        break;
      case value: statement;
        break;
      case value: statement;
        break;
    ...
      case value: statement;
        break;
      default: statement;

    说明:  

      每个情况(case)都是表示“如果 expression 等于 value,就执行 statement”。

      关键字 break 会使代码跳出 switch 语句。如果没有关键字 break,代码执行就会继续进入下一个 case。

      关键字 default 说明了表达式的结果不等于任何一种情况时的操作(事实上,它相对于 else 从句)。

    switch 语句主要是为避免让开发者编写下面的代码:

    if (i == 20)
      alert("20");
    else if (i == 30)
      alert("30");
    else if (i == 40)
      alert("40");
    else
      alert("other");

    等价的 switch 语句是这样的:

    switch (i) {
      case 20: alert("20");
        break;
      case 30: alert("30");
        break;
      case 40: alert("40");
        break;
      default: alert("other");
    }

    举例1:

      CSS部分

    /* 医嘱:长嘱,临嘱,中医样式显示 Start*/
    .yz_td1 {
        line-height: 28px;
        height: 28px;
        padding-left: 10px;
        width: 100px;
    }
    /*灰色背景色*/
    .yz_td2 {
        font-size: 14px;
        height: 28px;
        line-height: 28px;
        width: 100px;
        color: #333;
        margin: 4px;
        background: #e7e9e6;
        border-radius: 6px;
        text-align: center;
    }
    /*绿色背景色*/
    .yz_td3 {
        font-size: 14px;
        height: 28px;
        line-height: 28px;
        width: 100px;
        color: #fff;
        margin: 4px;
        background: #42b012;
        border-radius: 6px;
        text-align: center;
    }
    /* End 医嘱:长嘱,临嘱,中医嘱样式显示*/

      HTML部分

    <table cellspacing="0" cellpadding="1" border="0" class="medical_table" width="100%" height="100%">
        <tbody>
            <tr>
                <td class="yz_td1">查看医嘱</td>
                <td width="100">
                    <div class="yz_td3" onclick="ctrlYzTitle('yzOption1');" id="yzOption1">长嘱</div>
                </td>
                <td width="100">
                    <div class="yz_td2" onclick="ctrlYzTitle('yzOption2');" id="yzOption2">临嘱</div>
                </td>
                <td width="100">
                    <div class="yz_td2" onclick="ctrlYzTitle('yzOption4');" id="yzOption3">中医</div>
                </td>
                <td></td><!-- 空td不要删除 -->
            </tr>
        </tbody>
    </table>

      JS部分

    /**
     * 控制医嘱类型显示内容
     */
    function ctrlYzTitle(senderId) {
        switch (senderId) {
            case 'yzOption1':
                document.getElementById('yzOption1').className = 'yz_td3';
                document.getElementById('yzOption2').className = 'yz_td2';
                document.getElementById('yzOption3').className = 'yz_td2';
                break;
            case 'yzOption2':
                document.getElementById('yzOption2').className = 'yz_td3';
                document.getElementById('yzOption1').className = 'yz_td2';
                document.getElementById('yzOption3').className = 'yz_td2';
                break;
            case 'yzOption3':
                document.getElementById('yzOption3').className = 'yz_td3';
                document.getElementById('yzOption1').className = 'yz_td2';
                document.getElementById('yzOption2').className = 'yz_td2';
                break;
            default:
                break;
        } 
    }

      实现效果:选中变色

      效果展示:

      举例2:巧用break特性

    switch (panelId) {
        case 'panel2':// 患者信息
        case 'panel4':// 专家选择
            if('0' == panelStatus) return;    
        case 'panel3':// 病历信息
            if('0' == panelStatus || '3' == panelStatus) return;    
    }

    二、ECMAScript 和 Java 中的 switch 语句

      ECMAScript 和 Java 中的 switch 语句有两点不同:

        在 ECMAScript 中,switch 语句可以用于字符串,而且能用不是常量的值。

       举例:

    var BLUE = "blue", RED = "red", GREEN  = "green";
    
    switch (sColor) {
      case BLUE: alert("Blue");
        break;
      case RED: alert("Red");
        break;
      case GREEN: alert("Green");
        break;
      default: alert("Other");
    }

      解说:switch 语句用于字符串 sColor,声明 case 使用的是变量 BLUE、RED 和 GREEN,这在 ECMAScript 中是完全有效的。

  • 相关阅读:
    struts2标签处理下拉列表
    JS中parseInt使用问题解析
    使用jquery异步无刷新删除
    html中table标签的td标签居中左(右)对齐
    struts2拦截器来防止sql注入
    在S2SH中调用返回参数的存储过程
    使用jquery的getJSON从服务器端获得数据
    【vue】vuecli中 对于public文件夹的处理
    oracle10新建表时大小定问题
    会议记录
  • 原文地址:https://www.cnblogs.com/Marydon20170307/p/7158634.html
Copyright © 2020-2023  润新知