JavaScript流程控制——分支

五、流程控制

目录

五、流程控制

1.流程控制

2.顺序流程控制

3.分支流程控制

3.1 分支结构 

3.2 if语句(单分支语句)

3.3 if...else语句(双分支语句) 

 3.4 if...else...if 语句(多分支语句)

4.三元表达式 

5.分支流程控制switch语句 

5.1 语法结构

5.2 switch语句和if...else...if语句的区别 


1.流程控制

概念:流程控制就是来控制我们的代码按照什么结构来执行。

流程控制主要有3种结构:顺序结构、分支结构和循环结构,这三种结构代表三种代码执行的顺序。

2.顺序流程控制

顺序结构是程序中最简单、最基本的流程控制,他没有特定的语法结构,程序会按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。

3.分支流程控制

3.1 分支结构 

概念:由上到下执行代码的过程中,根据不同的条件,执行不同的路径代码(执行代码多选一的过程),从而得到不同的结果。

JS提供了两种分支结构语句:if语句和switch语句

3.2 if语句(单分支语句)

  1. 语法结构
    //条件成立执行代码,否则什么也不做
    
    if(条件表达式){
        //条件成立执行的代码语句
    }

    语句可以理解为一个行为,循环语句和分支语句就是典型的语句。一个程序由很多个语句组成,一般情况下,会分割成一个一个的语句。

  2. 执行过程
    1. 判断条件是一个布尔值,当该值为true时,执行{}中的代码块,否则不进行任何处理。当代码块中只有一条语句时,{}可以省略。

3.3 if...else语句(双分支语句) 

  1. 语法结构
    //条件成立执行if里面的代码,否则执行else里面的代码
    
    if(条件表达式){
    //条件成立执行的代码
    }else{
    //条件不成立执行的代码
    }
  2. 执行过程
    1. 当判断条件为true时,执行代码段1;当判断条件为false时,执行代码段2

 3.4 if...else...if 语句(多分支语句)

  1. 语法结构
    //适合于检查多重条件
    
    if(条件表达式1){
        语句1;
    }else if(条件表达式2){
        语句2;
    }else if(条件表达式3){
        语句3;
    ...
    }else{
        以上条件都不成立,执行此代码;
    }
  2. 执行过程
    1. 当判断条件1为true时,则执行代码块1;否则继续判断条件2,若为true时,则执行代码块2,以此类推;若所有的条件都为false,则执行n+1

4.三元表达式 

三元表达式也能做一些简单的条件选择。有三元运算符组成的式子称为三元表达式。

  1. 语法结构

    表达式1?表达式2:表达式3

  2. 执行思路

    如果表达式1为true,则返回表达式2的值;如果表达式1为false,则返回表达式3的值

5.分支流程控制switch语句 

5.1 语法结构

switch语句也是多分支语句,它用于基于不同的条件来执行不同的代码。当要针对变量设置一系列特定值的选项,就可以使用switch。

switch(表达式){
    case 值1:
        代码块1;
        break;
    case 值2:
        代码块2;
        break;
    ...
    default:
        以上条件都不成立,才执行此代码块;
        [break;]
}
  1. 关键字switch后面括号内可以是表达式或值,通常是一个变量。
  2. 关键字case后跟一个选项的表达式或值,后面跟一个冒号
  3. switch表达式的值会与结构中的case值作比较
  4. 如果存在匹配全等(===),则与该case关联的代码块会被执行,并在遇到break时停止,整个switch语句代码执行结束
  5. 如果所有的case值都和表达式的值不匹配,则执行default里的代码
  6. 执行case里面的语句时,如果没有break,则继续执行下一个case里面的语句。

5.2 switch语句和if...else...if语句的区别 

语句应用场景执行效率
if...else...if适用于范围判断分支较少时,if...else语句执行效率高于switch
switch通常处理case比较确定的情况分支较多时,switch语句的执行效率比较高,且结构更清晰
  • 51
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值