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

原文地址:https://www.cnblogs.com/chenhaiyun/p/14530681.html