流程控制语句
1. 顺序结构
> 代码默认执行的结构,从上到下,从左到右
2. 分支结构(选择结构)
有多条代码,选择性执行
[1] if 分支
1.单分支结构
if(条件){
条件满足(true)的时候就会执行这里的代码
}
案例:
var age = 6;
if (age >= 7){
console.log('你可以上小学了');
}
2.双分支结构
if(条件){
条件满足执行这里代码
}else{
条件不满足执行这里代码
}
// 肯定会执行某一条语句
案例:
var age = 6;
if (age >= 7){
console.log('你可以上小学了');
}else{
console.log('你不可以上小学');
}
3.多分支语句
if(条件1){
代码1
} else if(条件2){
代码2
}else if(){
...
}
else{
代码
}
也只会执行其中一条分支,如果上面的条件已经满足了,那么久不会在往下去判断条件和执行
[2]. switch多值匹配
switch结构
switch(条件){
case 1:
执行语句1;
case 2:
执行语句2;
default:
当所有的case的后面的值都不匹配,就会执行default后面的代码;
}
案例:
var num = '1';
switch (num) {
case 0:
console.log('?');
break;
case 1:
console.log('!');
break;
case 2:
console.log('|');
break;
default:
console.log('??');
break;
}
switch中存在case穿透问题:
当switch括号中的某个值 跟case后面的值相等的时候 那么机会从这个case 往后执行所有的代码
解决方法:执行语句后面添加break
switch 多值匹配 是一个全等形式的匹配
3. 循环结构
重复执行某一段代码
循环语句的组成:
初始化变量
判断条件
执行循环(循环体)
变量更新
死循环:
当没有变量更新的时候导致循环体一直执行
循环步骤:
1.先初始化
2.判断条件:
条件成立==>执行循环体
条件不成立==>循环结束
3.循环执行完成 ===>变量更新
4.变量更新 = ==>判断条件[2]
1. while
初始化
while(判断条件){
循环体
变量更新
}
案例:
var num = 0;
while(num <= 10){
console.log(num);
num++;
}
2. do while
初始化
do{
循环体
变量更新
}while(判断条件)
循环顺序:初始化==>循环体==>变量更新==>判断条件==>
do while循环中,不管判断条件是否成立,都会执行一次循环
案例:
var num = 10;
do{
console.log(num);
num++;
}while(num >= 20)
3. for
for循环步骤
1.var n 定义变量
2.给 n 赋值为0
3.判断条件 n <= 5 条件成立 执行[4]
条件不成立 退出循环
4.执行循环体
5.变量更新 n++ ==> [2]
for(初始化;判断条件;变量更新){
循环体;
}
案例:
for(var n = 0; n <= 100; n++){
console.log(n);
}
4. for in
…
5. for of
…
循环中的关键字:
break:终止循环,跳出当前循环
continue:跳过本次循环,跳出当层循环
**循环中的标识符:**给循环起名字
outer:for(){
inter:for(){
}
}