流程控制
在一个程序执行的过程中,各条代码的执行顺序对程序的结果是有直接影响的。很多时候要通过控制代码的执行顺序来实现要完成的功能。
简单理解:流程空时就是来控制代码按照什么结构顺序来执行
流程控制主要有三种结构,分别是顺序结构、分支结构和循环结构,这三种结果代表三种代码执行的顺序。
顺序流程控制
顺序结构是最简单、最基本的流程开控制,它没有特定的语法结构,结构会按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。
分支流程控制if结构
1、分支结构
由上到下执行代码的过程中,根据不同的条件,执行不同的路径代码(执行代码多选一的过程),从而得到不同的结果。
js提供了俩种分支结构语句
● if语句
● switch语句
//1、if的语法结构 如果if
if(条件表达式){
//执行语句
}
//2、执行思路:如果if里面的条件表达式结果为真 true 则执行大括号里面的语句。如果if条件表达式结果为假 则不执行大括号里面的语句 则执行if 语句后面的代码。
语句可以理解为一个行为,循环语句和分支语句就是典型的语句。一个程序由很多个语句组成,一般情况下,会分割成一个一个的语句。
if else语句(双分支语句)
语法结构
//语法结构 if 如果 else 否则
if(条件表达式){
//执行语句1
}else{
//执行条件2
}
//执行思路:如果表达式结构为真 那么执行语句1 否则执行语句2
//if里面的语句1 和else里面的语句2 最终只能有一个语句执行
注意:else后面直接跟大括号没有小括号
if else if 多分支语句
多分支语句 就是利用多个条件来选择不同的语句执行得到不同的结果。
<script>
//语法规范
if (条件表达式1) {
// 语句1;
} else if (条件表达式2) {
//语句2;
} else if (条件表达式3) {
//语句3;
} else {
//最后的语句
}
</script>
注意:
● 多分支语句为多选1 只能选择一个语句执行
● else if 里面的条件理论上是可以任意多个的
● else if 后面要跟()且中间有个小空格
三元表达式
● 由三元运算符组成的式子称为三元表达式
● 语法结构:条件表达式?表达式1:表达式2
● 执行思路:如果条件表达式结果为真,则返回表达式1的值,如果条件表达式结果为假则返回表达式2的值
<script>
var num = 10;
var result = num > 5 ? '是的' : '不是'
console.log(result);
</script>
分支流程控制switch语句
switch语句也是多分支语句,它用于基于不同的条件来执行不同的代码。当要针对变量设置一系列的特定值的选项时,就可以用switch。
<script>
//swith 语句也是多分支语句 也可以实现多选一
//语法结构 switch意思为转换、开关 case意思为 小例子或者选项 break 退出的意思
switch (表达式) {
case value1:
执行语句1;
break;
case value2:
执行语句2;
break;
default:
执行最后的语句;
}
//执行原理:利用表达式的值和case后面的选项值相匹配,如匹配上就执行,如没匹配上,执行default里面的语句
switch (2) {
case 1:
console.log('这是1');
break;
case 2:
console.log('这是2');
break;
case 3:
console.log('这是3');
break;
default:
console.log('没有匹配结果');
}
//输出结果为 这是2
</script>
注意:
● 表达式经常写成变量
● 变量的值和case里面的值相匹配的时候为全等(===),必须是值和数据类型一致
● 如果当前的case里面没有break 则不会退出switch,会继续执行下一个case,直到遇到break才退出,若都没有break所有代码都会执行