switch 再书写的时候 如果不写 break 会出现穿透现象
穿透现象: 找到第一个满足的 case 的时候, 开始执行这个代码
执行完毕如果没有 break 会继续执行下一个 case
直到 遇到一个 break 或者 分支语句全部执行完毕
原代码
var a = 1
switch (a) {
case 1:
console.log('case 1 执行')
case 10:
console.log('case 10 执行')
case 20:
console.log('case 20 执行')
break
case 30:
console.log('case 30 执行')
case 40:
console.log('case 40 执行')
case 100:
console.log('case 100 执行')
default:
console.log('上述情况都不满足的时候, 我会执行')
}
穿透语法
var month = 2 // 再控制台输出5月有?天
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
console.log('有31天')
break
case 4:
case 6:
case 9:
case 11:
console.log('有30天')
break
case 2:
console.log('有28天')
break
}