JavaScript switch语句

  • JavaScript Switch语句

    switch语句用于根据不同的条件执行不同的操作。switch语句选择要执行的许多代码块之一。
    句法
    switch(expression) {
      case x:
        // 代码块
        break;
      case y:
        // 代码块
        break;
      default:
        // 代码块
    }
    这是它的工作原理:
    • 切换表达式计算一次。
    • 将表达式的值与每种情况的值进行比较。
    • 如果匹配,则执行相关的代码块。
    switch (new Date().getDay()) {
      case 0:
        day = "Sunday";
        break;
      case 1:
        day = "Monday";
        break;
      case 2:
         day = "Tuesday";
        break;
      case 3:
        day = "Wednesday";
        break;
      case 4:
        day = "Thursday";
        break;
      case 5:
        day = "Friday";
        break;
      case 6:
        day = "Saturday";
    }
    尝试一下
  • break关键字

    JavaScript到达break关键字时,它会跳出switch继续往下执行。
  • default关键字

    如果没有匹配的情况下,default关键字指定的代码运行,:
    switch (new Date().getDay()) {
      case 6:
        text = "今天是 Saturday";
        break; 
      case 0:
        text = "今天是 Sunday";
        break; 
      default: 
        text = "期待周末";
    }
    尝试一下
    default情况下,不必在切换块的最后一种情况:
    switch (new Date().getDay()) {
      default: 
        text = "期待周末";
        break;
      case 6:
        text = "今天是星期六";
        break; 
      case 0:
        text = "今天是星期日";
    }
    尝试一下
    如果default不是switch中的最后一种情况,请记住以break结束default情况。
  • 通用代码块

    有时您会希望不同的开关案例使用相同的代码。在此示例中,案例4和5共享相同的代码块,0和6共享另一个代码块:
    switch (new Date().getDay()) {
      case 4:
      case 5:
        text = "很快就是周末";
        break; 
      case 0:
      case 6:
        text = "周末";
        break;
      default: 
        text = "期待周末";
    }
    尝试一下
    如果default不是switch中的最后一种情况,请记住以break结束default情况。
  • 严格的比较

    切换案例使用严格比较(===)。值必须与要匹配的类型相同。只有操作数属于同一类型时,才能进行严格比较。在此示例中,x将不匹配:
    var x = "0";
    switch (x) {
      case 0:
        text = "Off";
        break;
      case 1:
        text = "On";
        break;
      default:
        text = "找不到值";
    }
    尝试一下