今日学习内容:
1.概念
流程控制就是控制我们的代码要按照什么样的顺序结构来执行
2.流程控制分为3类
顺序结构
JS本身就是按照从上到下的顺序来执行的
分支结构
if语句
根据不同的条件判断结果来执行不同的代码
单if语句
语法 if(条件判断){
条件满足的时候执行的代码
}
if else语句
语法 if(条件判断){
条件满足的时候执行的代码
} else {
条件不满足的时候执行的代码
}
if elseif else
语法 语法 if(条件表达式1){
满足条件表达式1执行的代码
} else if(条件表达式2){
满足条件表达式2执行的代码
} else if(条件表达式3){
满足条件表达式3执行的代码
}.......{
} else {
如果以上条件都不满足执行的代码
}
3.三元表达式
概念
三元表达式能做一些简单的条件选择
语法结构:
表达式1 ? 表达式2 : 表达式3
执行思路:如果表达式1为true,就返回表达式2的值,如果是false就返回表达式3的
switch case
switch case 也是多分支语句,基于不同的条件来执行不同的代码,一般情况下是针对某一变量来设置一系列特定的值。
注意点:
关键字switch后面的括号中可以是表达式或者值,通常都是一个变量
关键字case后面跟一个具体的值
switch括号中的值会和每一个case中的值进行全等比较,如果满足条件就执行相应代码,并且要用break来打断switch语句,让整个代码结束。
如果和所有case中的值都不匹配,那么就执行default中的代码
if语句和switch语句的区别
switch语句通常处理case的值比较确定的情况,if语句主要是进行范围判断(大于、小于某一个范围)
switch语句进行判断后会直接进行相应的语句输出,效率更高,而if else语句要对每一个条件都要进行判断。
当分支比较少的时候if.. else效率更高,但是分支比较多,推荐使用switch语句,效率会更高,而且结构更清晰。
循环结构
for循环
语法结构
for(初始化变量;条件表达式;操作表达式) { // 循环体代码}
初始化变量:通常用于初始化一个计数器,没循环一次,都可以记录次数
条件表达式:确定每一次循环是否能被执行,如果结果为true,那么就可以继续循环,否则循环结束
操作表达式:计数器每次循环过后要自己进行值的变化,利用操作表达式来实现。
断点调试
断点调试指的是自己在程序的某一行来设置一个断点,当程序运行到断点的时候会停住,然后我们可以一步一步的去执行代码,观察代码的具体实现情况。
1、在浏览器的开发者工具中打开sources,查看代码,打断点,刷新页面
2、在watch中添加变量,依次执行代码,查看相应的变量结果
嵌套for循环
概念:在一个循环语句中再定义一个循环语句的语法结构,例如在for循环中再嵌套一个for循环,这样的情况叫双重for循环
打印五行四列的星星
打印正三角
打印倒三角
打印99乘法表
while循环
for循环一般情况都是在确定要循环多少次的时候来使用,当我们不确定循环到底多少次的时候就需要使用while循环
语法:while(条件表达式) {循环体代码};
运行逻辑
先执行条件表达式,如果结果为true,就执行循环体代码,如果为false就退出循环,执行后面的代码
do while循环
语法结构
do{循环体}while(条件表达式)
执行思路:先执行一次循环体代码,然后再进行条件判断,如果为true,那么就继续执行循环体代码,否则就退出循环
break和continue
continue
用于立即跳出本次循环,继续执行下一次循环。
break
用于立即跳出整个循环(循环结束)
|