韩顺平 javascript教学视频_学习笔记5_js三大流程控制(顺序流程、分支控制、循环控制)
2016-01-25 20:44
816 查看
js基本语法——三大流程控制
顺序控制
让程序有选择的执行,分支控制有三种
1. 单分支
2. 双分支
3. 多分支
单分支 if 语句
if(条件表达式){
语句;
}
双分支 if else 语句
if(条件表达式){
语句;
}else{
语句;
}
多分支 if else if else ..... 语句
if(条件表达式1){
//执行
}else if(条件表达式2){
//执行
}else if…{ //可以有多个else if
}
else{ //可以没有
}
多分支 switch 语句
switch(条件表达式){
case 常量1:
语句; break;
case 常量2:
语句; break;
…
case 常量n:
语句; break;
default:
语句; break;
}
注意:case有几个都行,default可以没有。当case1~n都不满足的时候,则default。default并不一定要在最后。
for循环
for(循环初值;循环条件;步长){
语句; //循环体
}
while循环
while(循环条件){
语句; //循环体
}
do while循环
do{
}while(循环条件);
特别说明:while循环是先判断再执行语句,do while循环是先执行,再判断。
好好看一下下面的代码:
<html> <head> <script language="javascript"> var a=890; switch(a){ case 890: window.alert("这是890"); break; //break 作用是跳出整个switch语句 case 90: window.alert("这是90"); break; case 890: window.alert("没有匹配的值"); break; } //当break语句没有的时候,会接着向下执行,直到碰到第二个break var a=890; switch(a){ case 890: window.alert("这又是890"); //这里没有break语句,执行下一句 case case 90: window.alert("这是90"); break; case 890: window.alert("没有匹配的值"); break; } // 下面这个会出现什么提示? //会弹出三个对话框,因为1没有任何匹配就进入了default,执行window.alert("默认"); //又因为没有break,就接着执行window.alert("今天是星期一"); //又因为没有break,就再执行window.alert("今天是星期二"); var flag=1; switch(flag){ default: window.alert("默认"); case 'a': window.alert("今天是星期一"); case 'b': window.alert("今天是星期二"); } //下面的这个又会提示什么呢? //1.1有匹配了,只显示1.1,然后语句结束。 var flag=1.1; switch(flag){ default: window.alert("默认1.1"); case 'a': window.alert("今天是星期一1.1"); case 'b': windo 4000 w.alert("今天是星期二1.1"); case 1.1: window.alert("1.1"); } //对上面的程序再深一步,下面的这个又会提示什么呢? //1.2有匹配了,先显示1.2,没有遇到break,就继续执行window.alert("今天是星期二1.2"); //还是没有遇到break,再执行window.alert("默认1.2"); //程序结束。 var flag=1.2; switch(flag){ case 'a': window.alert("今天是星期一1.2"); case 1.2: window.alert("1.2"); case 'b': window.alert("今天是星期二1.2"); default: window.alert("默认1.2"); } </script> </head> <body></body> </html>
注意:
js的switch语句类型可以是js支持的任何类型(数组和对象除外)
case后面的数据类型可以任意(数组和对象除外)
break作用是跳出整个switch语句
如果没有匹配的则执行default后面的语句
案例:
计算1+2+......+n的值
<html> <head> <script language="javascript"> var n=window.prompt("请输入一个整数"); n=parseInt(n); var res=0; for(var i=0;i<=n;i++){ res+=i; } document.writeln("结果是"+res); </script> </head> <body></body> </html>
2. 计算1!+2!+........+n!的值
<html> <head> <script language="javascript"> var n=window.prompt("请输入一个整数"); n=parseInt(n); var res=0; var temp=1; for(var i=1;i<=n;i++){ for(var j=1;j<=i;j++){ temp*=j; } res+=temp; tmep=1; } document.writeln("结果是"+res); </script> </head> <body></body> </html>
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- JavaScript演示排序算法
- javascript实现10进制转为N进制数
- 2019年开发人员应该学习的8个JavaScript框架
- HTML中的script标签研究
- 对一个分号引发的错误研究
- 异步流程控制:7 行代码学会 co 模块
- ES6 走马观花(ECMAScript2015 新特性)
- JavaScript拆分字符串时产生空字符的原因
- Canvas 在高清屏下绘制图片变模糊的解决方法
- Redux系列02:一个炒鸡简单的react+redux例子
- JavaScript 各种遍历方式详解
- call/apply/bind 的理解与实例分享
- 如何创建对象以及jQuery中创建对象的方式
- 数组方法汇总