一、if语句

语法:
    if (判断的条件) {
        当小括号内的条件为真, 然后才会执行
    } 
        var a = 1;
        a = 2;

        if (a == 1) {
            console.log(1);     
        }
        if (a == 2) {
            console.log(2);
        }

二、if……else语句

语法:
    if (判断的条件) {
        当小括号内的条件为真, 然后才会执行
    } else{
        否则执行else里面的
    }

        var a = -1;

        if (a > 0) {
            console.log('a大于0');
        } else {
            console.log('a小于0');
        }

二、if……else if……else

1、解释说明

语法:
    if (判断的条件1) {
        满足判断条件1执行
    } else if(判断的条件2){
        满足判断条件1执行
    }else{
        否则执行else里面的
    }
        /**
         * 根据成绩 (0~100),打印不同的结果
         *    0~60     不及格
         *    61~80    要努力
         *    81~100   优秀
        */
        var a = -100;

        if (a >= 81 && a <= 100) {
            console.log('优秀')
        } else if (a >= 61 && a <= 80) {
            console.log('要努力')
        } else if (a >= 0 && a <= 60) {
            console.log('不及格')
        } else {
            console.log('不符合上述期间')
        }

2、课堂练习

2.1 判断一个正整数是不是偶数
        var a = 10;

        if (a % 2 == 0) {

            console.log(a, '是偶数');
            console.log(a + '是偶数');
        } else {

            console.log(a + '是奇数');
        }

在这里插入图片描述

2.2 判断一个年份是平年还是闰年
  • 条件1: 四年一润, 百年不润;(year % 4 == 0 && year % 100 != 0
  • 条件2: 四百年补一润 (year % 400 == 0
        var year = 2022

        if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {

            console.log(year, '年是闰年')
        } else {

            console.log(year, '年是平年')
        }
        // 2022 '年是平年'

三、swith

        /**
         *  switch 的判断使用的是全等
         * 
         *  语法:
         *      switch (判断条件) {
         *          case 条件1:
         *              满足条件1执行的代码
         *              break;
         *          case 条件2:
         *              满足条件2执行的代码
         *              break;
         *          default:
         *              上述条件都不满足时执行的代码
         *      }
        */
        var a = 100;
        switch (a) {
            case 10:
                console.log('a为10');
                break;
            case 20:
                console.log('a为20');
                break;
            case 100:
                console.log('a为100');
                break;
            default:
                console.log('不满足上述所有case时, 执行默认')
        }

四、Switch的穿透

1、解释说明

  • 寻找到满足的条件后, 如果没有break
  • 会继续往下执行, 直到发现break或者结束
        var a = 10
        switch (a) {
            case 10:
                console.log('a为10')
                break;
            case 20:
            case 30:
            case 40:
                console.log('a为20')
                break;
            case 100:
                console.log('a为100')
            default:
                console.log('不满足上述所有case时, 执行默认')
        }

2、课堂案例

2.1 根据月份,在控制台打印当月的天数(2月假设有28天)
        var m = 11;
        var day;
        switch (m) {
            case 1:
            case 3:
            case 5:
            case 7:
            case 8:
            case 10:
            case 12:
                day = 31;
                break;
            case 4:
            case 6:
            case 9:
            case 11:
                day = 30;
                break;
            case 2:
                day = 28;
                break;
        }
        console.log(m, '月有', day, '天');
2.2 根据成绩(0~100)在控制台输出内容
  • 0~60 —> 不及格
  • 61~80 —> 要努力
  • 81~100 —> 优秀
        var a = 81;
        switch (a) {
            case 50:
                console.log('不及格');
                break;
            case 61:
                console.log('要努力');
                break;
            case 81:
                console.log('优秀');
                break;
        }
2.3 用户输入年份和月份, 判断当月有几天

案例分析

  1. 不管那年, 除了 2月 都是固定的
  2. 要想确定 2 月 的天数, 首先要判断 当前是否为闰年

代码实现

        var year = 2022;
        var m = 11;
        var day;
        switch (m) {
            case 2:
                if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
                    day = 29
                } else {
                    day = 28
                }
                break;
            case 1:
            case 3:
            case 5:
            case 7:
            case 8:
            case 10:
            case 12:
                day = 31
                break;
            case 4:
            case 6:
            case 9:
            case 11:
                day = 30
                break;
        }
        console.log(year, '年', m, '月有', day, '天');
Logo

基于 Vue 的企业级 UI 组件库和中后台系统解决方案,为数万开发者服务。

更多推荐