JavaScript学习笔记——流程控制
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<; i++) {
document.write("第一层循环:"+i);
document.write("<br/> ");
for (var j=0; j<; 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;
// }
JavaScript学习笔记——流程控制的更多相关文章
- Go语言学习笔记-流程控制(二)
Go语言流程控制 字典类型Map 1.上节遗留:map字典类型 变量声明:var myMap map[string] PersonInfo 其中,myMap是变量名,string是键的类型,Perso ...
- go学习笔记-流程控制(if/else,for/range)
流程控制(if/else,for/range) if if条件判断语句的语法概括起来就是:如果满足条件就做某事,否则做另一件事. func testIf() { num := 10 if num &l ...
- python学习笔记---流程控制
二.流程控制 2.1选择结构与语句 2.1.1 最简单的if语句 注意:if语句后边必须加上冒号 满足条件后.可以执行多条语句. #最简单的if语句 print("请输入一个既能整除2,又能 ...
- Java学习笔记-流程控制
在Java中,最常见的就是顺序结构,另外,还有其他的一些的结构,选择,循环等,这些程序结构的加入,使得程序代码更有选择性 判断结构 if语句 三种格式: if(条件表达式) { 执行语句; } if( ...
- C学习笔记-流程控制
常用的流程图符号 起止框用于表示流程的开始或结束: 输入/输出框用平行四边形表示,在平行四边形内可以写明输入或输出的内容: 判断框用菱形表示,它的作用是对条件进行判断,根据条件是否成立来决定如何执行后 ...
- Java程序猿的JavaScript学习笔记(3——this/call/apply)
计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...
- Java程序猿JavaScript学习笔记(4——关闭/getter/setter)
计划和完成这个例子中,音符的顺序如下: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScr ...
- Java程序猿的JavaScript学习笔记(5——prototype和Object内置方法)
计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...
- Java程序猿的JavaScript学习笔记(汇总文件夹)
最终完结了,历时半个月. 内容包含: JavaScript面向对象特性分析,JavaScript高手必经之路. jQuery源代码级解析. jQuery EasyUI源代码级解析. Java程序猿的J ...
随机推荐
- [转] Spring注解@Component、@Repository、@Service、@Controller区别
原文地址:http://blog.csdn.net/zhang854429783/article/details/6785574 很长时间没做web项目都把以前学的那点框架知识忘光了,今天把以前做的一 ...
- 【CodeVS 3123】高精度练习之超大整数乘法 &【BZOJ 2197】FFT快速傅立叶
第一次写法法塔,,,感到威力无穷啊 看了一上午算导就当我看懂了?PS:要是机房里能有个清净的看书环境就好了 FFT主要是用了巧妙的复数单位根,复数单位根在复平面上的对称性使得快速傅立叶变换的时间复杂度 ...
- 【BZOJ 2038】【2009 国家集训队】小Z的袜子(hose) 分块+莫队
$SDOI2016Day-1$临时抱佛脚学习一下莫队算法$233$ 我预感到自己省选要爆0hhh #include<cmath> #include<cstdio> #inclu ...
- hive中行转换成列
python代码 #!/bin/bashimport sys; if __name__=='__main__': for line in sys.stdin: m=line.strip().split ...
- ansible解密
ansible是个什么东西呢?官方的title是“Ansible is Simple IT Automation”——简单的自动化IT工具.这个工具的目标有这么几项:让我们自动化部署APP:自动化管理 ...
- 使用jmeter进行性能测试-Jmeter教程及技巧汇总 (转)
http://www.jmeter.cf/loadtesting-jmeter.html 为什么使用jmeter, 它免费开源, 不断发展, 功能逐渐强大. 可以做功能,负载, 性能测试.一套脚本可以 ...
- C# JSon转换
1. 先添加System.Web.Extensions.dll引用 var js = new System.Web.Script.Serialization.JavaScriptSerialize ...
- Servlet 工作原理解析
转自:http://www.ibm.com/developerworks/cn/java/j-lo-servlet/ Web 技术成为当今主流的互联网 Web 应用技术之一,而 Servlet 是 J ...
- Maven配置不成功
配置了MAVEN_HOME,新建了java文件,在d:/java/MAVEN_HOME/apach....,path下输出%MAVEN_HOME%bin,为什么cmd下mvn不行呢?因为MAVEN_H ...
- 虚拟机软件bochs编译使用问题
bochs是一款具有调试功能的虚拟机软件,由C++编写,可用于调试操作系统.从ubuntu软件源中下载的很可能没有调试功能,需要先下载源码,可能比编译之后的可执行文件大的多. 编译时有很多选项,可以通 ...