javascript流程控制
流程:就是程序代码的执行顺序。
流程控制:通过规定的语句让程序代码有条件的按照一定的方式执行。
一、顺序结构
按照书写顺序来执行,是程序中最基本的流程结构。
二、选择结构(分支结构、条件结构)
根据给定的条件有选择的执行形相应的语句。
(1) if else if else
1.单路分支
//条件可以是表达式也可以是任何的数据类型
//大括号会把他里面的代码当作一个整体来运行,如果只有一条语句,可以省略大括号
if(条件){
条件成立执行的语句
}
2.双路分支
if(条件){
条件成立的时候执行的代码
}else{
条件不成立的时候执行的代码
}
3.多路分支
if(条件1){
条件1成立执行的代码
}else if(条件2){
条件2成立执行的代码
}else if(条件3){
条件3成立执行的代码
}......else{
如果上述条件都不成立执行的代码
}
4.嵌套分支
if(条件1){
if(){
}else if(){
}....
}else if(条件2){
条件2成立执行的代码
}else if(条件3){
条件3成立执行的代码
}......else{
如果上述条件都不成立执行的代码
}
(2)
switch(变量任何的数据类型){
case 值1:
表达式1;
break;
case 值2:
表达式3;
break;
.........
defalut:
表达式
}
多个选择进行相应的匹配
*************************************************
1.当判断某种范围的时候最好用if语句,当判断单个值时候用switch
2.条件满足的情况不可以重复,会发生不可预期的错误。
*************************************************
三、循环结构
javascript 循环结构中包含以下三种循环
for()循环
while()循环
do...while()循环。
for()循环: 重复执行,符合条件的代码段。
在for循环中须注意的一点:初始值与循环条件之间须用“;”分号分隔开来。
语法结构:
for(初始值;循环条件;值的递增与递减){
循环体代码;
}
示例:
<script type="text/javascript">
var arr=new Array(1,2,3,4,5,6);
alert(arr.length);
for(i=0;i<arr.length;i++){
document.write(arr[i]);
}
</script>
while循环,当满足循环条件时,执行循环。
示例:
<script>
var num=1; //初始化变量的值;
while(num<=6){//循环条件
document.write(num+"<br/>");
num++; //值递增1;
}
</script>
do...while()循环;
语法结构:
do{
代码块;
}while(循环条件)
do...while循环,先执行一次,再判断条件是否符合;如符合,继续执行循环体中的代码块。
示例:
<script>
var num=0;
do{
document.write(num);
num++;
}while(num<10)
</script>
javascript流程控制-跳转语句、with语句
四、跳转语句
在循环控制语句中,当 满足指定条件 的时候,退出循环 或者是退出 当前 循环的语句。
1.break;
格式:break;
跳出并且终止循环,如果后面有代码,则继续往下执行。
2.continue;
格式:continue;
跳出并且终止当前的循环,如果下个值仍满足循环条件,则继续循环。
***********************************************************
break:
A.switch,指的是当满足某个条件后,退出switch语句
B.用在循环语句当中,跳出并且终止循环,如果后面有代码,则继续往下执行。
continue:
A.只能用在循环语句当中, 跳出并且终止当前的循环,如果下个值仍满足循环条件,则继续 循 环。
B.最好用适当的语句代替continue
***********************************************************
五、标签语句:
用来退出多层循环
格式:
out: for (var i=0; i<5; i++) { document.write("第一层循环:"+i); document.write("<br/> "); for (var j=0; j<5; j++) { if(j==3){ continue out; } document.write("第二层循环:"+j); } document.write("<br/>"); } alert("我退出去了");
标签名:语句;
注意:标签名只可以作用于break 或continue,可以用于跳出两层循环
六、
with(){
}
//with语句 用于设置代码在 特定对象中 的 作用域。
// with(document){
// write(1);
// write(2);
// write(3);
// write(4);
// write(5);
// write("后盾网");
// }
就是把document.write(1);
document.write(2);....前面的document省略
用于设置代码在对象中的作用域。
*************************************************
不建议使用。
*************************************************
动态地改变document的title
//document.title="后盾网";
// var a="后盾网";
// var title="后盾网视频教程";
// with(document){
// title=a;
// }