ຄຳສັ່ງ Switch JavaScript

switch ຄຳສັ່ງທີ່ຈະດຳເນີນການທີ່ຕາມເງື່ອນໄຂຕ່າງກັນ.

ຄຳສັ່ງ Switch JavaScript

ກະຕຸ້ນໃຊ້ switch ຄຳສັ່ງເພື່ອເລືອກໜຶ່ງຈາກບັນດາບັນຕິບັນການທີ່ຕ້ອງຈັດຕັ້ງ.

ການປະກອບຕາມພາສາ

switch(表达式) {
     case n:
        代码块
        break;
     case n:
        代码块
        break;
     default:
        默认代码块
} 

代码解释:

  • 计算一次 switch 表达式
  • 把表达式的值与每个 case 的值进行对比
  • 如果存在匹配,则执行关联代码

ຄວາມຄົງ

getDay() 方法返回 0 至 6 之间的周名数字(weekday number)。

(Sunday=0, Monday=1, Tuesday=2 ..)

本例使用周名数字来计算周的名称:

switch (new Date().getDay()) {
    case 0:
        day = "星期天";
        break;
    case 1:
        day = "星期一";
         break;
    case 2:
        day = "星期二";
         break;
    case 3:
        day = "星期三";
         break;
    case 4:
        day = "星期四";
         break;
    case 5:
        day = "星期五";
         break;
    case 6:
        day = "星期六";
} 

结果将是:


ທົດລອງດຽວກັບເຈົ້າເອງ

break 关键词

如果 JavaScript 遇到 break 关键词,它会跳出 switch 代码块。

此举将停止代码块中更多代码的执行以及 case 测试。

如果找到匹配,并完成任务,则随机中断执行(break)。无需更多测试。

break 能够节省大量执行时间,因为它会“忽略” switch 代码块中的其他代码的执行。

不必中断 switch 代码块中的最后一个 case。代码块在此处会自然结束。

default 关键词

default 关键词规定不存在 case 匹配时所运行的代码:

ຄວາມຄົງ

getDay() 方法返回 0 至 6 的数字周名。

如果今日既不是周六(6)也不是周日(0),则输出一段默认消息:

switch (new Date().getDay()) {
    case 6:
        text = "今天是周六";
        break; 
    case 0:
        text = "今天是周日";
        break; 
    default: 
        text = "期待周末~";
} 

text 的结果是:


ທົດລອງດຽວກັບເຈົ້າເອງ

默认的 case 不必是 switch 代码块中最后一个 case:

ຄວາມຄົງ

switch (new Date().getDay()) {
    default: 
        text = "ຄິດຫວັງອາທິດທີ່!";
         break;
    case 6:
        text = "今天是周六";
        break; 
    case 0:
        text = "今天是周日";
} 

ທົດລອງດຽວກັບເຈົ້າເອງ

如果 default 不是 switch 代码块中最后一个 case,请记得用 break 结束默认 case。

ການໃຊ້ກັບລະບຽບທົດສະຫຼະ

ບາງຄັ້ງທີ່ທ່ານຈະຕ້ອງການ case ແຕກຕ່າງກັນເພື່ອໃຊ້ກັບລະບຽບດຽວກັນ.

ໃນບັນຫານີ້ case 4 และ 5 ແມ່ນເປັນການແບ່ງກັນກັບລະບຽບທີ່ບາງບັນຫາ case 0 และ 6 ແມ່ນເປັນການແບ່ງກັນກັບລະບຽບອື່ນ:

ຄວາມຄົງ

switch (new Date().getDay()) {
    case 4:
    case 5:
        text = "ອາທິດທີ່ຈະມາເຖິງແລ້ວ:)";
        break; 
    case 0:
    case 6:
        text = "ມື້ນີ້ແມ່ນອາທິດ~";
         break;
    default: 
        text = "ຄິດຫວັງອາທິດທີ່!";
} 

ທົດລອງດຽວກັບເຈົ້າເອງ

ລາຍລະອຽດຂອງ Switching

ຖ້າມີ case ຫລາຍບ່ອນຕົກລົງຕ້ອງກັບ case ຄືກັນ, ຈະເລືອກ case ທຳອິດ.

ຖ້າບໍ່ພົບ case ທີ່ຕົກລົງ, ຄະນະກຳລັງຈະຕໍ່ໄປຫລັງ label ຄົນທີ່ແນ່ນອນ.

ຖ້າບໍ່ພົບ label ຄົນທີ່ແນ່ນອນ, ຄະນະກຳລັງຈະຕໍ່ໄປຫລັງ switch.

ການປຽບທຽບຄວາມຈິງຈັງ

Switch case ນໍາໃຊ້ການປຽບທຽບຄວາມຖືກຕ້ອງຢ່າງຈິງຈັງ (====)

ຄວາມຕ້ອງການຕ້ອງມີຄວາມຖືກຕ້ອງດຽວກັນກັບຄົນທີ່ຕ້ອງການ.

ການປຽບທຽບຄວາມຖືກຕ້ອງຈະເປັນ true ເວລາທີ່ຄຳປະມານກັນຢູ່ໃນບັນດາຄຳປະມານດຽວກັນ.

ໃນກໍລະນີນີ້, x ຈະບໍ່ຕົກລົງ:

ຄວາມຄົງ

var x = "0";
switch (x) {
  case 0:
    text = "Off";
    break;
  case 1:
    text = "On";
    break;
  default:
    text = "No value found";
}

ທົດລອງດຽວກັບເຈົ້າເອງ

ປືກສາຫລັກສາ

ກ່ຽວກັບ ຄຳສັ່ງ Switch JavaScriptຂໍ້ພາກສາ, ກະລຸນາອ່ານເນື້ອຫາທີ່ຕາມການສອນ JavaScript ສູງສຸດ:

ຄຳສັ່ງ switch ECMAScript
switch 语句ແມ່ນຄຳສັ່ງຊົງຊົງຂອງ if 语句. ບົດນີ້ສະເໜີການນໍາໃຊ້ switch 语句 ແລະ ຄວາມແຕກຕ່າງກັບ switch 语句ໃນ Java.