顺序结构
默认 代码自上往下依次执行
分支结构
if语句
用于条件条件判断
if单分支
if(条件){分支代码}
- 用于单个条件判断
- 注意点:判断条件可以是哪些
(1)关系表达式: 结果一定是布尔类型
(2)布尔类型的值
(3)其他值: 会隐式转换成布尔类型来判断条件
if-else双分支
if(条件){}else{}
- 用于两个互斥条件
注意点: if大括号与else大括号 一定只会执行一个。(不会都执行,也不会都不执行)
if-else if-else多分支
if(条件1){ }else if(条件2){ }else{ }
- 用于多个条件判断
- 注意点:
所有的大括号最多只会执行一个,只有当上面条件不成立,才会进入下面条件判断
必须以if开头, 后面可以写多个else if,结尾else可以省略
三元表达式
式子 ? 代码1 : 代码2
- 如果式子为true,则执行代码1,否则执行代码2
- 如果代码1和代码2有运算结果,三元表达式的结果就是他们的值
switch-case:固定值匹配
switch(匹配值){ }
- 注意点
- 匹配值和case值 一定是全等
- break作用是结束switch-case,如果省略则会穿透
穿透: 代码从上一个case无条件执行到下一个case
合理穿透: 多个匹配值需要执行的代码相同
循环结构
代码重复执行的两种循环
while循环
用于循环次数不明确
while(条件 true/false){
循环体: 需要重复执行的代码
}
- 执行规则
- (1)判断小括号条件是否成立
- (2)如果为true,则执行循环体代码
- 重复步骤(1)
- (3)如果为false,则循环结束
for循环
用于循环次数明确
for( 语句1 ; 语句2 ; 语句3 ){
//循环体:需要重复执行的代码
}
for( 声明循环变量 ; 循环条件 ; 循环变量自增 ){ 循环体代码 }
- 执行步骤:
-
- 执行 声明循环变量
-
- 判断 循环条件 是否成立
- 2.1 成立 : 执行循环体, 执行循环变量自增, 重复步骤2
- 2.2 不成立:循环结束
循环结构循环结构场景
1.找出指定范围符合条件的数据(筛选功能)
(1).遍历指定范围的数据
(2).找出符合条件的数
2.求累加和
(1)声明变量存储结果
(2)遍历数量
(3)累加
求最大最小值
(1)声明变量存储结果
- 求最大值 let max = -Infinity
- 求最小值 let max = Infinity
(2)遍历
(3)依次比较大小
循环结构关键字
- break:结束整个循环语句,立即执行循环外面代码
- continue:结束本次循环体,立即进入下一次循环体