swich语句

swich语句

补充点单词(看看就行):

switch: 游戏机, 岔道

case: 方案, 情况

break: 打断, 结束

default: 默认

正题来了(swich语句)

概念

(1)根据你要判断的数据决定执行哪一段代码

(2)把你的数据做出很多种匹配情况, 决定执行哪一种情况

基本语法

基本语法

switch (数据) {

​ case 情况一: 满足情况一的时候执行的代码

​ break

​ case 情况二: 满足情况二的时候执行的代码

​ break

​ default: 所有条件都不满足的时候执行的代码

​ }

注意事项

​ 注意1: () 内的内容不会在转换成布尔了, 都会拿到一个最终结果, 进入到 switch 中去判断

​ 注意2: 要判断的数据和每一个 case 必须是 值和数据类型(===) 都一样才叫做满足条件

​ 注意3: case 位置尽量不写表达式, 因为会按照表达式的结果来进行条件判断

​ 注意4: switch 不负责做范围性的判断

​ 注意5: default 可以不写, 不写的时候, 所有 case 都不满足就没有 代码执行

​ 注意6: break 如果不写会发生 break穿透效果

[^穿透效果:不管下一个 case 是不是满足, 都会直接执行代码, 直到遇到下一个 break 或者代码整体执行完毕为止]:

小案例

0 ~ 6 的数字在控制台输出星期几

var  week = 4
    switch(week){
        case 0:
            console.log('星期一')
        case 1:
            console.log('星期二')
        case 2:
            console.log('星期三')
        case 3:
            console.log('星期四')
        case 4:
            console.log('星期五')
        case 5:
            console.log('星期六')
        case 6:
            console,log('星期天')
        default:
            console.log('你判断的数据不是 0 ~ 6 的数子')
    }

输出: 星期四

练习

练习1:根据成绩在控制台输出一些字母

90 以上 A

80 ~ 89 B

70 ~ 79 C

60 ~ 69 D

60 以下 E

var socer = 80
   swicth (parseInt( socer / 10 )){
       case 10:
       case 9:
          console.log('A')
       case 8:
          console.log('B')
       case 7:
          console.log('C')
       case 6:
          console.log('D')
       break
       default:
       console.log('E')
   }

输出:  B 

练习2:根据 1 - 12 这些数字输出当月多少天

(二月暂时按28天计算)

 var month = 9

    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
    }

输出:  30

练习3:根据年月日三个变量信息,判断是当年的第几天

 var year = 2020
    var month = 12
    var date = 31

    //初始变量不设置为 0, 就是当月日期
     var total = date

    // 开始叠加月份
     switch (month) {
       case 12: total += 30
       case 11: total += 31
       case 10: total += 30
       case 9: total += 31
       case 8: total += 31
       case 7: total += 30
       case 6: total += 31
       case 5: total += 30
       case 4: total += 31 // 叠加 3 月
       case 3:
         // 需要叠加 2 月份的整月天数, 判断一下闰年
         total += year % 4 === 0 && year % 100 !== 0 || year % 400 === 0 ? 29 : 28
       case 2: total += 31 // 叠加 1 月
     }

     console.log(total)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值