一、循环语句
1、while
语法
1
2
3while(条件表达式){
循环执行代码段
}
- 流程
- 判断条件表达式的值
- 当值为true时循环执行代码段
- 当值为false时退出循环体
- 热性
- 先检查条件,再执行循环
- 条件不满足则循环一次也不执行
- 时机
- 一个动作被重复执行到满足某个 条件时
2、do-while
语法
1
2
3do{
循环执行的代码段
}while(条件表达式)流程
- 先执行循环体内代码段再进行判断
- 如果表达式的值为true,则重复执行代码段
- 如果表达式的值为false,则退出循环体
特性
- 先执行循环体,再进行条件判断
- 循环体内代码至少执行一次
时机
- 希望一个动作至少被执行一次时
3、for
语法
1
2
3for(循环变量 = 初值;循环条件;递增/递减计数器){
循环代码段
}流程
- 用循环变量初始值与循环条件相比较,确定返回值
- 如果返回值为true则执行循环体
- 执行完一次后进行递增/递减运算
- 将运算结果与循环条件相比较
- 如果返回值为true则继续执行循环体
- 如果返回值为false则退出循环体
时机
- 重复一个动作到一定次数时
4、for-in
语法
1
2
3for(声明变量 in 对象){
代码段
}作用
- 枚举对象属性
注意事项
- 循环输出的属性顺序不可预知
- 对象的值不能是null或undefined
二、跳转语句
1、return
- 终止函数体的运行,并返回一个值
2、break
- 终止整个循环,不再进行判断
3、continue
- 结束本次循环,接着去判断是否执行下次循环
三、选择语句
1、if
语法
1
2
3
4
5
6
7if(条件表达式1){
代码段1
}else if(条件表达式2){
代码段2
}else{
代码段3
}流程
- 判断条件1,如果返回值为true则执行代码段1
- 如果条件1的返回值为false则跳过语句1并检测条件2
- 如果所有的表达式的值均为false则执行else后面的语句
特性
结构复杂,可嵌套
可测试多个条件表达式
表达式的值具有线性特征
表达式的值是动态的
适用于任意类型的数据
可处理复杂的逻辑关系
2、switch
语句
1
2
3
4
5
6
7
8
9
10
11switch(条件表达式){
case 标签1:
代码段1;
break;
case 标签2:
代码段2;
break;
…… ……
default:
代码段n;
}流程
- 计算表达式的值,并与各标签相比较
- 若找到与之匹配的标签,则执行其后的代码段
- 若没有找到与之匹配的标签则执行default之后的代码段
格式
- case标签为常量,可以是字符串或数字
- 每个标签均以冒号:结束
- 虽然break与default为可选性,但为了逻辑清晰最好不要省略
- case标签的值必须和条件表达式在值完全匹配
特性
- 结构简洁,专为多重选择设计
- 仅可测试一条条件表达式
- 表达式的值具有离散性
- 表达式的值是固定的,不会动态变化的
- 仅能应用整数,枚举,字符串等类型数据
- 仅能处理多个枚举型逻辑关系
四、异常处理语句
- throw
- 主动抛出异常
- try
- 指明需要处理的代码段
- catch
- 捕获异常
- finally
- 后期处理