流程:就是程序代码的执行顺序
流程控制:通过规定的语句让程序代码有条件的按照一定的方式执行
1.顺序结构(按照书写顺序来执行,是程序中最基本的流程结构)
2.选择结构(分支结构、条件结构):根据给定的条件有选择的执行形相应的语句
if else
1.单路分支
*.条件可以是表达式也可以是任何的数据类型
*.大括号会把他里面的代码当作一个整体来运行,如果只有一条语句,可以省略大括号
if(1<2)alert(1);
if (条件){ //只有当条件为 true 时执行的代码 }
2.双路分支
if (条件){ //当条件为 true 时执行的代码 }else{ //当条件不为 true 时执行的代码 }
3.多路分支
if (条件 1){ //当条件 1 为 true 时执行的代码 }else if (条件 2){ //当条件 2 为 true 时执行的代码 }else{ //当条件 1 和 条件 2 都不为 true 时执行的代码 }
4.嵌套分支
if(1<2){ if(){ }else{ } }else{ }
switch
switch(n){ case 1: //执行代码块 1 break; case 2: //执行代码块 2 break; default: //n 与 case 1 和 case 2 不同时执行的代码 }
*************************************************
1.当判断某种范围的时候最好用if语句,当判断单个值时候用switch
2.条件满足的情况不可以重复,会发生不可预期的错误。
*************************************************
3.循环结构(在给定的条件满足下,反复执行同一段代码)
for(循环代码块一定的次数)
for (语句 1; 语句 2; 语句 3){ //被执行的代码块 } //语句 1 在循环(代码块)开始前执行 //语句 2 定义运行循环(代码块)的条件 //语句 3 在循环(代码块)已被执行之后执行
while(循环会在指定条件为真时循环执行代码块)
while (条件){ //需要执行的代码 }
// 99乘法表 var a=1; while(a<=9){ var b=1; while(b<=a){ document.write(b+'*'+a+'='+a*b+' '); b++; } document.write('<br>'); a++; }
do/while 循环是 while 循环的变体。该循环会执行一次代码块,在检查条件是否为真之前,然后如果条件为真的话,就会重复这个循环
do{ //需要执行的代码 } while (条件);
#######################################
do{}while 和 while的区别
1.while:当条件满足时,执行循环体,当不满足时退出循环;先判断,后循环
2.do{}while:先执行一次,再进行条件判断;条件满足再循环,不满足退出循环
for 和 while 的区别
1.for:一般用于循环指定的次数(知道循环次数)
2.while是根据条件真假来循环,当真时进行循环,假退出循环(未知循环次数)
#######################################
4.流程控制--跳转语句(在循环控制语句中,当 满足指定条件 的时候,退出循环 或者是退出 当前 循环的语句。)
1.break;跳出并且终止循环,如果后面有代码,则继续往下执行。
2.continue;跳出并且终止当前的循环,如果下个值仍满足循环条件,则继续循环
*******
break:
A.switch循环指的是当满足某个条件后,退出switch语句
B.用在循环语句当中,跳出并且终止循环,如果后面有代码,则继续往下执行
continue:
A.只能用在循环语句当中, 跳出并且终止当前的循环,如果下个值仍满足循环条件,则继续循环
B.最好用适当的语句代替continue(continue效率低)
//例子: for(var i=1;i<5;i++){ if(i!=3){ document.write(i); }; } //等价于 for(var i=1;i<5;i++){ if(i==3){continue;}; document.write(i); }
5、标签语句(用来退出多层循环)
break out;
continue out;
注意:标签名只可以作用于break 或continue
ab: for(var i=1;i<5;i++){ document.write(i+'<br>'); for(var b=1;b<6;b++){ if(i==3){continue ab;}; document.write('b'+b+'<br>'); } }
6、with(){}用于设置代码在对象中的作用域。
*************************************************
不建议使用。
with(document){
write(1);
write(2);
write(3);
write(4);
write(5);
}
结果 12345
*************************************************