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之后的代码就不会执行)

  • 相关阅读:
    Homestead 安装其它的PHP版本
    Angular调用父Scope的函数
    检测到在集成的托管管道模式下不适用的ASP.NET设置
    IE8不能保存cookie,造成response.redirect死循环的原因
    IE浏览器“自定义安全级别”不能设置的原因
    测试sql server服务是否配置正确
    Sql Server Express 2005提示"failed to generate a user instance of sql server "
    cordova使用Gradle构建下载maven太慢,使用阿里云镜像
    使用Cordova编译Android平台程序提示:Could not reserve enough space for 2097152KB object heap
    Angular动态编译Html
  • 原文地址:https://www.cnblogs.com/chenhaiyun/p/14530681.html
Copyright © 2011-2022 走看看