Js中的if分支语句与switch语句/三元运算符

本文介绍了JavaScript中用于条件判断的三种语句:if、switch和三元运算符。详细解释了它们的语法和使用场景,并通过示例展示了如何根据不同的需求选择合适的判断语句。if语句适用于范围判断,switch适用于具体数值判断,而三元运算符则适用于简单的二选一情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这些语句都是为了让程序做出一些判断当满足一些条件的时候触发一种情况,当改变条件触发的情况也会跟着改变。

if

            if单词的意思指的是如果的意思 else单词的意思是否则的意思

            语法1:if(条件){代码}

            意思:如果()中的条件成立那么就执行后面{}中的语句

            语法2:if(条件){代码}else{代码}

            意思:如果()条件满足就执行if{}的代码段,如果条件不满足,就执行else{}的代码段

            比如:想写一个当分数大于60分,就输出成绩合格,若小于60分则输出成绩不合格。

 var a = 73
        if(a<72){
            console.log('成绩不合格')
        }else{
            console.log('成绩合格')
        }

            语法3:if(条件1){代码1} else if(条件2){代码2} else if(条件3){代码3}。。。。

            意思:如果if()条件成立就执行代码段1,条件不成立就去看到else if()语句,如果第二个条件成立就执行代码2,不成立依次往下阅读。

            需求:给你一个变量,当这个变量中存储的值如果为1就输出星期一

                如果为2就输出星期二

                如果为3就输出星期三

                如果为4就输出星期四

                如果为5就输出星期五

                如果为6就输出星期六

                如果为7就输出星期天

                假设变量的值是除了1-7之外的数字,那么语法3就没有颁给给出反馈结果了。

                如果我想实现,当 变量的值不是1-7之内的我就输出:星期中没有该数字,应该怎么办

            语法4:if(条件1){代码段1} else if(条件2){代码段2} else if(条件3){代码段3}。。。else{}

            只需要在语法3的基础上再加一个else即可

            意思:当前面所有条件都不满足的时候才会执行最后的else里面的内容

         var week = 4
        if (week == 1) {
            console.log('星期一');
        }
        else if(week==2){
            console.log('星期二');
        }
        else if(week==3){
            console.log('星期三');
        }
        else if(week==4){
            console.log('星期四');
        }
        else if(week==5){
            console.log('星期五');
        }
        else if(week==6){
            console.log('星期六');
        }
        else if(week==7){
            console.log('星期天');
        }
        else{
            console.log('星期中没有该数字');
        }

switch

  switch语句也可以用来做一些判断
            语法:
                switch(你要判断的东西){
                    case 情况1:满足情况1需要执行的语句
                        break
                    case 情况2:满足情况2需要执行的语句
                        break
                    case 情况3:满足情况3需要执行的语句
                        break
                    case 情况4:满足情况4需要执行的语句
                        break
                    。。。。。。。。
                    default:以上所有条件都不满足就执行default的语句。

 break可  以不写,但是如果不写break,程序就会一直向下执行,直到碰到break或者整个switch执行完毕才会结束这种现象我们叫做break的穿透

用switch语句来写星期问题:

var week = 7
switch (week) {
    case 1: console.log('星期一');
        break
    case 2: console.log('星期二');
        break
    case 3: console.log('星期三');
        break
    case 4: console.log('星期四');
        break
    case 5: console.log('星期五');
        break
    case 6: console.log('星期六');
        break
    case 7: console.log('星期天');
        break
}

思考:用if和switch分别来写输入一个数字表示月份显示结果为当月的天数(包含简写方式)

if:正常书写

 var month = 1
 var year = 2020
     if (month == 1) {
         console.log('31');
     }
    else if (month == 2) {
         if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0){
             console.log('29');
         }
         else{
             console.log('28');
         }
     }
     else if (month == 3) {
         console.log('31');
     }
     else if (month == 4) {
         console.log('30');
     }
     else if (month == 5) {
         console.log('31');
     }
     else if (month == 6) {
         console.log('30');
     }
     else if (month == 7) {
         console.log('31');
     }
     else if (month == 8) {
         console.log('31');
     }
     else if (month == 9) {
         console.log('30');
     }
     else if (month == 10) {
         console.log('31');
     }
     else if (month == 11) {
         console.log('30');
     }
     else if (month == 12) {
         console.log('31');
     }

if:简写

var month = 4
var year = 2020
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {
    console.log('31');
}
else if (month == 4 || month == 6 || month == 9 || month == 11){
    console.log('30');
}
else if(month==2){
    if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0){
        console.log('29');
    }
    else{
        console.log('28');
    }
}

两者的结果是相同的只是第二种方式将会重复的代码用逻辑语句连起来。

switch:正常书写

var month = 1
var year = 2021
switch (month) {
    case 1: console.log('31');
        break
    case 2:
        if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
            console.log('29');
        }
        else {
            console.log('28');
        }
        break
    case 3: console.log('31');
        break
    case 4: console.log('30');
        break
    case 5: console.log('31');
        break
    case 6: console.log('30');
        break
    case 7: console.log('31');
        break
    case 8: console.log('31');
        break
    case 9: console.log('30');
        break
    case 10: console.log('31');
        break
    case 11: console.log('30');
        break
    case 12: console.log('31');
        break
    default: console.log('没有这个月份');
}

default:指的是不在指定范围内而显示的内容。

switch:简写

var month = 4
var year = 2021
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:
        if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
            console.log('29');
        }
        else {
            console.log('28');
        }
        break
    default: console.log('没有这个月份');
}

=========================================================================

三元运算符

 三元运算符(三目运算符、表达式)
 他也能实现判断的效果
 语法:条件?条件成立执行的语句:条件不成立执行的语句

例子:用三元运算符写判断一个数字是偶数还是奇数。

 var num = 11
 num % 2 == 0?console.log('偶数') : console.log('奇数');

如何选择判断语句:

 判断语句有3种 
 if:做范围判断
 switch:做具体数值的判断(不太适合区间判断)
 三元运算符:只能做简单的判断,只有2个情况并且执行语句只有1句话的时候
 如果搞不清楚到底改用哪个,用if一定不会出错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值