js中的分支语句

91 阅读3分钟

if 语句

* 语法1:   if (条件) { 书写如果条件成立, 需要执行的代码 }
 
*              条件为真 就会执行 大括号内的 代码, 否则 不执行
*              条件可以直接书写布尔值, 也可以书写一个表达式, 或者一个数字
*              只要你书写的不是一个布尔值, 那么会隐式转换为 一个布尔值
* 
*      语法2: 
*              if (条件) {
*                  书写如果条件成立, 需要执行的代码
*              } else {
*                  当上边的条件不成立的时候, 我会执行, 如果上边的条件成立了, 我就不执行了
*              }
* 
*      语法3(不推荐大量使用):
*              
*              if (条件1) {
*                  如果条件1成立, 那么我会执行, 同时后续的所有 else if 或者 else 都不会执行了
*              } else if (条件2) {
*                  如果条件1不成立, 但是条件2成立了, 那么我会执行 , 同时后续的所有 else if 或者 else 都不会执行了
*              } else if (条件3) {
*                  如果条件1和条件2都不成立, 但是条件3成立了, 那么我会执行 , 同时后续的所有 else if 或者 else 都不会执行了
*              } .....
* 
*      语法4(语法3的一个升级补充):
* 
*              if (条件1) {
*                  如果条件1成立, 那么我会执行, 同时后续的所有 else if 或者 else 都不会执行了
*              } else if (条件2) {
*                  如果条件1不成立, 但是条件2成立了, 那么我会执行 , 同时后续的所有 else if 或者 else 都不会执行了
*              } else if (条件3) {
*                  如果条件1和条件2都不成立, 但是条件3成立了, 那么我会执行 , 同时后续的所有 else if 或者 else 都不会执行了
*              } else {
*                  如果上述的所有条件都不成立, 那么我会执行, 否则就不执行
*              }

*      注意: if 语句的难点不是如何选择 语法 1 2 3 4
*              难点是 if 语句 的 条件如何书写
     var num = 0

     if (num === 100) {
         console.log('条件1成立, 所以我执行了')
     } else if (num === 199) {
         console.log('条件2成立, 所以我执行了')
     } else if (num === 10086) {
         console.log('条件3成立, 所以我执行了')
     } else {
         console.log('上述所有条件都不满足, 所以我执行了')
     }

     if (3>2) {
         console.log("三就是比二大");
     } else if (3===2) {
         console.log("三明明和二相等");
     } else{
         console.log("三比二小");
     }
     

switch语句

1. 语法:
    switch(表达式){
        case 表达式:
            代码...
            break
        case 表达式:
            代码...
            break
        case 表达式:
            代码...
            break
        case 表达式:
            代码...
            break
        default:
            代码...
            break
    }
    */
    /*
       switch 语句, 也是 分支语句的一种
     
           主要用于某一个变量的具体值, 做判断 (全等 ===)
    */

    // switch (变量) {
    //     case 100:
    //         当变量的值 === 100 的时候会执行
    //         break;
    //     case 101:
    //         当变量的值 === 101 的时候会执行
    //         break;
    //     default:
    //         当上述条件都不满足的时候, 执行
    // }
    
    /*
      switch 的穿透现象 (穿刺现象)
          在书写 case 的时候, 没有 书写 break
              那么如果这个 case 符合条件那么就会执行它内部的代码
              代码执行完毕后, 没有发现 break, 所以会继续向下执行
              不管 下一个 case 条件是否满足
              直到遇见下一个 break 或者 当前 switch 代码全都执行完毕
    */
   var moon ="女"
    switch (moon) {
        case "女":
           console.log(moon);
            break
        }

三元运算符

     //  条件表达式 ? 表达式1 : 表达式2
     /*
     - 执行顺序:
                条件运算符在执行时,会先对条件表达式进行求值判断,
                    如果结果为true,则执行表达式1
                    如果结果为false,则执行表达式2
    */
   var a=5
   //如果a>2的话b就输出“成功” 如果a<2的话b就输出"失败"

   var b= a>1?"成功":"失败"
   console.log(b);