zoukankan      html  css  js  c++  java
  • javaScript系列---【流程控制--分析选择结构if及switch】

    流程控制

    任何一门编程语言都存在流程控制,流程控制不是js独有的,可以分为以下几种:

    • 顺序结构 :默认代码从上到下执行的

    • 选择结构:if switch

    • 循环结构:for for-in while 及 do-while

    • 其它结构:break continue

     

    1.选择结构 - if

    if判断可以判断js中所有的情况

    基本语法

    • 单条件

    //省略else
    if(条件){
       条件成立执行的代码段
    }
    //如果条件成立执行的代码段只有一行;可以省略{}
    if(条件)条件成立执行的代码段;
    //标准写法
    if(条件){
       条件成立执行的代码段
    }else{
       条件不成立执行的代码段
    }
    • 多条件

    //省略else
    if(条件){
       条件成立执行的代码段
    }else if(条件){
       条件成立执行的代码段  
    }...

    //不省略elese
    if(条件){
       条件成立执行的代码段
    }else if(条件){
       条件成立执行的代码段  
    }...else{
       以上条件不成立执行的代码段
    }

     

    代码示例:

    //60以下  不及格
           //60-70   良
           //70-80   中等
           //80-100 优秀
    score1 = -10;
       if (score1 < 60 && score1 >=0) {
               console.log("不及格");
        } else if (score1 >= 60 && score1 < 70) {
               console.log("良");
        } else if (score1 >= 70 && score1 < 80) {
               console.log("中等");
        } else if (score1 >= 80 && score1 <= 100) {
               console.log("优秀");
        }else{
               console.log("hello,错误了~~~");
        }
           

     

    2.选择结构 - switch

    基本语法

    //简写
    //省略default
    switch(值){
       case 比较值1: 成立执行的代码段;break;
       case 比较值2: 成立执行的代码段;break;
       case 比较值3: 成立执行的代码段;break;
       ...
    }

    //default
    switch(值){
       case 比较值1: 成立执行的代码段;break;
       case 比较值2: 成立执行的代码段;break;
       case 比较值3: 成立执行的代码段;break;
       ...
       default:{
           以上情况都不成立执行的代码段
      }
    }
           
           
    //标准写法
    switch (key) {
       case value:{
           代码段;
            break;
      }
     
       case:{
           代码段;
           break;
      }
       
       default:{
           以上情况都不成立的代码段
      }
    }

    注意点:

    • switch中值的比较属于绝对比较,不同数据类型一定不相等

    • case穿透:不仅当前case对应的情况执行,会把以下所有情况都执行

    • 解决case穿透:在代码段末尾加break;

      • break在这里的含义结束(整个switch就结束了); 并且break之后的代码就不会执

    case穿透问题:

    • 解决穿透问题加break; (break在这里的含义结束(整个switch就结束了); 并且break之后的代码就不会执行)

  • 相关阅读:
    sqlserver中判断表或临时表是否存在
    Delphi 简单方法搜索定位TreeView项
    hdu 2010 水仙花数
    hdu 1061 Rightmost Digit
    hdu 2041 超级楼梯
    hdu 2012 素数判定
    hdu 1425 sort
    hdu 1071 The area
    hdu 1005 Number Sequence
    hdu 1021 Fibonacci Again
  • 原文地址:https://www.cnblogs.com/chenhaiyun/p/14530681.html
Copyright © 2011-2022 走看看