js流程控制

69 阅读3分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第14天,点击查看活动详情

JavaScript流程控制

循环语句

  • while
    • 语法 : while (条件表达式) {循环执行代码段}
    • 流程 : 判断条件表达式的值;当值为true时循环执行代码段;当值为false时退出循环体
    • 特性 : 先检查条件,再执行循环;条件不满足时一次循环也不执行
    • 时机 : 一个动作被重复执行到满足某个条件时
  • do-while
    • 语法 : do {循环执行的代码段 while (条件表达式)
    • 流程 : 限制性循环体内代码段再进行判断;如果表达式的值为true,则重复执行代码段,否则就退出
    • 特性 : 先执行循环体,在进行条件判断;循环体内代码至少执行一次
    • 时机 : 希望一个动作至少被执行一次时
  • for
    • 语法 : for (循环变量 = 初值;循环条件;递增/递减计数器) {循环代码段}
    • 流程 : 用循环变量初始值与循环条件相比较,确定返回值;如果返回值为true则执行循环体;执行完一次就进行递增/递减操作;将运算结果与循环条件相比较,返回值为true则继续执行循环体,否则退出
    • 时机 : 重复一个动作一定次数
  • for-in
    • 语法 : for (声明变量 in 对象) { 代码段}
    • 作用 : 枚举对象属性
    • 注意事项 : 循环输出的属性顺序不可预知;对象的值不能是Null或undefineds

跳转语句

  • return : 终止函数体的运行,并返回一个值
  • break : 终止整个循环,不再进行判断
  • continue : 结束本次循环,接着去判断是否执行下次循环

选择语句

  • if
    • 语法 : if (条件表达式1) {代码段1} elseif (条件表达式2) {代码段2} elses {代码段3}
    • 流程 : 判断条件1,如果返回值为true则执行代码段1;否则跳过代码段1并检测条件2;如果所有表达式的值均为false则执行else后面的语句
    • 特性 : 结构复杂,可嵌套;可测试多个条件表达式;表达式的值具有线性特征;表达式的值是动态的;适用于任何类型的数据;可处理复杂的逻辑关系
  • switch
    • 语法 : switch (条件表达式1) {case 标签1:代码段1;...;default:代码段n;}
    • 流程 : 计算表达式的值,并与各标签相比较;若找到与之匹配的标签,则执行其后的代码段;若没有找到与之匹配的标签则执行default之后的代码
    • 特性 : 结构简介,专为多重选择设计;仅可测试一条条件表达式;表达式的值具有离散型;表达式的值是固定的,不会动态变化的;仅能应用整数,枚举,字符串等类型数据;仅能处理多个枚举型逻辑关系

异常处理语句

  • throw : 主动抛出异常
  • try : 指明需要处理的代码段
  • catch : 捕获异常
  • finally : 后期处理