if语句和swicth语句和三元运算符
Published on 2022-11-08 13:43 in 分类: javascript基础学习 with 帅气丶汪星人

if语句和swicth语句和三元运算符

    if语句:

    首先if语句是判断语句,他的语法格式是这样的:
    if(判断条件){判断条件为真的时候,执行该语句}

    注意点:if判断条件存在隐式转换,转换为Boolean类型,真或者假;

    第二个注意点,除了空字符串‘’(注意是空的字符串),null,NaN,undefined,false,0,这些为假其余都为真。

        if (1 > 3)  //这里是判断条件
       {document.write('对的')}  //当满足条件以后在页面输出对的

    if语句中的else:

    else的语法

    if(判断条件){判断条件为真的时候,执行该语句}

    else{如果条件为假的时候,执行该语句}

        if (1 >3) {  //这里输入判断条件
          document.write('对的')  //当判断条件为真的时候执行该语句
        } else {
          document.write('不对')  //但是条件为假的时候执行该语句
        }

    if语句中的多分支语句:

        if (条件1) {满足条件1执行语句,不满足继续走}     else if (条件2) {满足条件2执行语句,不满足继续走}     else if (条件3) {满足条件3执行语句,不满足继续走}     else {不满足以上条件执行我} 
    复制代码
        let score = +prompt('请输入你的成绩')
        if (score >= 90) {
          document.write(`很棒`)
        } else if (score >= 80 && score <= 90) {  //这里如果按照顺序执行的话,可以不用写&&符号,但是不按照顺序写的时候,一定要写&&符号
          document.write(`还行`)
        } else if (score >= 60 && score <= 60) {
          document.write(`一般`)
        } else {
          document.write(`很差`)
        }
    复制代码

    注意点:else后边只有一行代码的情况下,可以省略大括号,直接写入表达式

        let score = +prompt('请输入你的成绩')
        if (score >= 90) document.write(`很棒`)
         else if (score >= 80 && score <= 90) document.write(`还行`)
         else if (score >= 60 && score <= 60) document.write(`一般`)
         else document.write(`很差`)

    switch语句:

    switch语句的语法结构

        switch(数据) {   //  这里的数据会和每个值进行比较,匹配上了,就执行,如果匹配不上,就不执行,进行下一个匹配
        case 值1 : 代码1 break 
        case 值2 : 代码2 break 
        case 值3 : 代码3 break 
        default : 代码n break   //  如果这里没有全等的数据,就会输出dedault
        }
    注意点:switch匹配要求,全等匹配===,如果判断区域的数值,在(true),会让数据case跟变量匹配  case === 变量:代码1 break
    注意点2:如果switch语句中出现判断区域性的数值,在()写true,让数据跟case中的数据匹配
    注意点3:break的作用是退出switch  匹配上以后就退出,不然会一直往后边打印,switch语句就会变得没有意义
    注意点4:switch一定要全等,数据和变量一定要全等
    注意点5:switch语句相同的返回值,可以多个case声明,给多个case声明一个值
    复制代码
        switch (1) {
          case 1:
            document.write('苹果n元1斤')
            break;
          case '2':
            document.write('橘子n元1斤')
            break;
          case '3':
            document.write('香蕉n元1斤')
            break;
          case '4':
            document.write('梨n元1斤')
            break;
          default:
            document.write('没有此水果,未来添加该类目')
            break;
        }
    复制代码
    复制代码
        let a = prompt('请输入年份')
        let b = +prompt('请输入月份')
        let c = 0;
        switch (b) {
          case 1:
          case 3:
          case 5:
          case 7:
          case 8:
          case 10:
          case 12:
            c = 31
            break;
          case 4:
          case 6:
          case 9:
          case 11:
            c = 30
            break;
          case 2:
            if (a % 4 === 0 || (a % 4 === 0 && a % 100 !== 0)) {
              c = 29
            } else {
              c = 28
            }
        }
        document.write(`您输入的年份是${a}<br>您输入的月份是${b}<br>那个月是${c}天`)
    复制代码

    if语句和switch语句的区别:

    if语句:处理单一或者两个条件的判断

    if-else语句:处理简单的条件分支情况

    多重if选择:处理复杂条件的分支情况

    嵌套if选择:用于较复杂的流程控制

    Switch语句选择情况:

    多分支,条件是等值的判断情况,表达式反馈类型不是Boolean类型,常用字符串进行对比,判断是否相等进行取值,一定要是全等

    能够使用switch实现的,if也可以实现,反之就不一定可以了,如果是区间范围使用if语句,如果是等值就使用switch语句

    三元运算符:

    三元运算符语法:条件表达式如果为真返回冒号前边的值如果为假返回冒号后边的值;

    经典案例,使用三元运算符,给小于10的数字前边补0

    复制代码
    let num = +prompt('请你输入一个1-10之间数字')
        // 如果小于10则进行补零操作
    /*     if (num < 10) {
          num = '0' + num
        }
        document.write(num) */
        // 使用三元运算符进行运算
        num = num < 10 ? `0` + num : num //这里num是把新的值赋给num的
        document.write(num)
    复制代码

     

    posted @   帅气丶汪星人  阅读(171)  评论(0编辑  收藏  举报
    相关博文:
    阅读排行:
    · TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
    · 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
    · 【译】Visual Studio 中新的强大生产力特性
    · 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
    · 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
    点击右上角即可分享
    微信分享提示