1. 流程控制
在一个程序执行过程中,各条代码的执行顺序对程序的结果是有直接影响的,很多时候我们通过控制代码的执行顺序来实现我们要完成的功能。
简单理解: 流程控制就是来控制我们代码按照什么结构顺序来执行。
流程控制主要三种结构: 分别是顺序结构、分支结构、循环结构。
2.顺序流程控制
顺序结构是程序中做简单、最基本的流程控制,它没有特定的语法结构,程序会按照代码的先后顺序,依次执行,程序中大多数代码都是这样执行的。
3.分支流程控制if语句
- 分支结构:由上到下,不同条件,执行不同路径代码(执行代码多选一),从而得到不同结果。
- js语言提供了两种分支结构语句
if语句
switch语句
4.三元表达式
三元表达式也能做一些简单的条件选择,有三元运算符组成的式子称为三元表达式。
<script>
//1.由三元运算符组成的式子我们称为三元表达式
//2.++num 3 + 5 ?:
//3.语法结构
//条件表达式 ? 表达式1 : 表达式2
//4.执行思路:如果条件表达式结果为真 则返回表达式1的值 如果条件表达式结果为假 则返回表达式2的值
var num = 10;
var result = num > 5 ? '是的':'不是的';//表达式有返回值
console.log(result);
</script>
5.分支流程控制switch语句
<script>
//switch 转换、开关 case 小例子或者选项的意思
// switch(表达式){
// case value1:
// 执行语句1;
// break;
// case value2:
// 执行语句;
// break;
// default:
// 执行最后语句;
// }
switch(2){
case 1:
console.log('这是1');
break;
case 2:
console.log('这是2');
break;
default:
console.log('匹配失败');
}
</script>
switch注意事项:
1.我们开发中,表达式经常写成变量;
2.变量和case中value匹配的时候是全等,必须是值和数据类型一致才可以;
3.break 如果当前case里面没有break,则不会退出switch,是继续执行下一个case。
6.switch语句与if else if 语句的区别
1.一般情况下,它们两个语句可以互换;
2.switch……case语句通常处理case较为确定值的情况下,而if……else……if语句更加灵活,常用于范围判断(大于、等于某个范围);
3.switch语句进行条件判断后直接执行到程序的条件语句,效率更高,而if……else语句有几种条件,就得判断多少次。
4.当分支比较少时,if……else语句的执行效率比switch语句高。
5.当分支比较多时,switch语句的执行效率比较高,而且结构更清晰。