[TOC]
>[info]流程:就是程序代码的执行顺序,流程控制:通过规定的语句让程序代码有条件的执行,改变程序运行顺序。
1. 顺序结构:按照书写顺序来执行,是程序中最基本的流程结构。
2. 选择结构(分支结构、条件结构):根据给定的条件有选择的执行相应的语句
3. 循环结构:在给定的条件满足的情况下,反复的执行同一段代码。
## If...Else(选择结构)
>[info]条件语句用于基于不同的条件来执行不同的动作。通常在写代码时,您总是需要为不同的决定来执行不同的动作。您可以在代码中使用条件语句来完成该任务。
在 JavaScript 中,我们可使用以下条件语句:
1. if 语句 - 只有当指定条件为 true 时,使用该语句来执行代码。
2. if...else 语句 - 当条件为 true 时执行代码,当条件为 false 时执行其他代码。
3. if...else if....else 语句 - 使用该语句来选择多个代码块之一来执行。
4. switch 语句 - 使用该语句来选择多个代码块之一来执行。
**例1**
~~~
<script type="text/javascript">
if (条件){
只有当条件为 true 时执行的代码
}
</script>
~~~
**例2**
~~~
<script type="text/javascript">
if (条件){
当条件为 true 时执行的代码
}else{
当条件不为 true 时执行的代码
}
</script>
~~~
**例3**
~~~
<script type="text/javascript">
if (条件 1){
当条件 1 为 true 时执行的代码
}else if (条件 2){
当条件 2 为 true 时执行的代码
}else{
当条件 1 和 条件 2 都不为 true 时执行的代码
}
</script>
~~~
**例4**
~~~
<script type="text/javascript">
switch(n){
case 1:
执行代码块 1
break;
case 2:
执行代码块 2
break;
default:
n 与 case 1 和 case 2 不同时执行的代码
}
</script>
~~~
## 循环
>[info]循环可以将代码块执行指定的次数。如果您希望一遍又一遍地运行相同的代码,并且每次的值都不同,那么使用循环是很方便的。
**我们可以这样输出数组的值:**
~~~
document.write(cars[0] + "");
document.write(cars[1] + "");
document.write(cars[2] + "");
document.write(cars[3] + "");
document.write(cars[4] + "");
document.write(cars[5] + "");
~~~
**不过通常我们这样写**
~~~
for (var i = 10; i >= 0; i--) {
document.write(i);
};
~~~
** 循环结构:**
1. for - 循环代码块一定的次数
2. for/in - 循环遍历对象的属性
3. while - 当指定的条件为 true 时循环指定的代码块
4. do/while - 同样当指定的条件为 true 时循环指定的代码块
### For 循环
>[info]for 循环是您在希望创建循环时常会用到的工具。
**下面是 for 循环的语法:**
~~~
for (语句 1; 语句 2; 语句 3){
被执行的代码块
}
~~~
* 语句 1 在循环(代码块)开始前执行
* 语句 2 定义运行循环(代码块)的条件
* 语句 3 在循环(代码块)已被执行之后执行
### For/In 循环
>[info]JavaScript for/in 语句循环遍历对象的属性:
~~~
var person={fname:"John",lname:"Doe",age:25};
for (x in person){
txt=txt + person[x];
}
~~~
### While 循环
>[info]只要指定条件为 true,循环就可以一直执行代码。
~~~
while (条件){
需要执行的代码
}
~~~
### do/while 循环
>[info]do/while 循环是 while 循环的变体。该循环会执行一次代码块,在检查条件是否为真之前,然后如果条件为真的话,就会重复这个循环。
~~~
do{
需要执行的代码
}while (条件);
~~~
### Break 和 Continue 语句
>[info]在循环控制语句中,当满足指定条件的时候,退出循环或者是退出 当前循环的语句。
* break 语句用于跳出循环。
* continue 用于跳过循环中的一个迭代。
>[danger]**作业:**通过学习了循环,输出一个九九乘法表。或者金字塔。
![](https://box.kancloud.cn/9076be8f435b07e1df15e86f89c654e9_669x298.png)
- 序言
- 第一章:准备工作
- 写在学习之前的话
- web应用开发结构
- 开发工具/环境
- 第二章:展现层面(HTML/CSS)
- HTML简介
- HTML基础
- HTML编码
- HTML链接
- HTML图像
- HTML列表
- HTML表单
- HTML表格(分水岭)
- HTML 实体
- HTML框架
- CSS层叠样式表
- CSS选择器
- CSS文本/字体
- CSS继承和叠加
- CSS框模型
- CSS浮动(分水岭)
- CSS定位
- CSS背景
- CSS图标字体
- CSS补充
- 开发技巧
- 第三章:展现层面(Javascript)
- JS简介
- JS实现
- JS输出交互
- JS变量
- JS数据类型
- JS运算符
- JS流程控制(分水岭)
- JS函数
- JS数组
- JS对象(分水岭)
- JS数组对象
- JS字符串对象
- JS数学对象
- JS日期对象
- JS BOM对象(分水岭)
- JS DOM对象
- JS事件对象
- JS元素对象
- JS DOM节点
- 第四章:展现层面(Jquery)
- JQ简介
- JQ使用
- JQ选择器
- JQ筛选
- JQ属性
- JQ-CSS
- JQ事件
- JQ文档处理
- JQ效果
- JQ-ajax
- 第五章:逻辑/业务层面(PHP)
- PHP简介
- PHP变量
- PHP数据类型
- PHP常量
- PHP运算符
- PHP流程控制
- PHP函数(分水岭)
- PHP日期
- PHP数学
- PHP数组
- PHP字符串
- PHP正则表达式(分水岭)
- PHP目录操作
- PHP文件
- PHP上传/下载
- PHP面向对象(分水岭)
- PHP图像处理
- PHP会话控制
- Ajax异步处理
- PHPMysql扩展
- PHPMysqli扩展
- PHPPdo扩展
- PHP接口
- PHP命名空间
- 第六章:逻辑/业务层面(框架设计)
- 第七章:存储层面(mysql)
- Mysql基础
- Mysql Sql简介
- Mysql数据库
- Mysql数据类型
- Mysql数据表
- Mysql操作记录
- Mysql查询
- Mysql修改表结构
- Mysql日期与时间
- Mysql分组统计
- Mysql多表查询
- Mysql安全
- Mysql存储引擎
- Mysql事务
- Mysql视图
- Mysql触发器
- Mysql存储过程
- Mysql存储函数
- Mysql优化
- 第八章:服务器(Linux)
- Linux介绍与安装
- Shell
- 目录与文件操作
- VIM编辑器使用
- 帐号管理
- SUDO
- 权限控制
- 压缩与打包
- 软件安装
- 计划任务
- 进程管理
- 宝塔Linux面板