1.流程控制
流程控制代码按照一定结构顺序来执行
1.1.分为三种:
顺序结构,分支结构,循环结构
1.2.顺序流程控制
最普通的就是顺序流程控制,程序会按照代码的先后顺序,依次执行
1.3.分支流程控制
1.从上到下执行过程中,根据不同的条件,执行不同路径的代码,得到不同的结果
2.JS 里提供两种分支结构语句:if语句,switch语句
--if语句
if(条件表达式){
//条件成立执行的代码
}
--if else(双分支语句)
if(条件表达式){
//[如果]条件成立,执行代码
}else{
//[否则]执行的代码
}
--if else if(多分支语句)
if(条件表达式){
语句1
}else if(条件表达式2){
语句2
}else if(条件表达式3){
语句3
}else{
上述条件都不成立,执行此处代码
}
1.4.三元表达式
表达式1 ? 表达式2 :表达式3
如果表达式1为true,就返回表达式2的值,
如果表达式1为false,就返回表达式3的值
1.5.switch分支流程控制
swirch(表达式){
case value1:
表达式等于value1时,要执行的代码
break
case value2:
表达式等于value2时,要执行的代码
break
default:
表达式不等于任何一个value时要执行的代码
}
小提示⚠️:
1. switch后面括号可以是表达式或值。通常是一个变量
2. case,后面跟一个选项的表达式或者值,后面有个冒号
3. switch表达式中的值与结构中的case值做比较
4. 如果存在匹配全等(===),则与该case关联的代码块,就会被执行,并且在遇到break时停止,整个switch语句代码执行结束
5. 如果所有的case值和表达式的值不匹配,则执行default里的代码
注意:执行case里面的语句时,如果没有break,则继续执行下一个case里的语句
swich和 if else if 的区别
-- switch case 通常处理case为比较确定的值的情况,而if...else...语句更加灵活,常用语范围判断(大于,等于某个范围)
-- switch 语句进行条件判断后直接执行得到程序的条件语句,效率更高。而if else 有几种条件,就得判断多少次
-- 分支比较少时,if else 的执行效率比switch 语句高
-- 分支较多时,switch语句的执行效率比较高,结构更清晰