JavaScript流程控制语句

上传人:宝路 文档编号:19491462 上传时间:2017-11-19 格式:DOC 页数:24 大小:574.09KB
返回 下载 相关 举报
JavaScript流程控制语句_第1页
第1页 / 共24页
JavaScript流程控制语句_第2页
第2页 / 共24页
JavaScript流程控制语句_第3页
第3页 / 共24页
JavaScript流程控制语句_第4页
第4页 / 共24页
JavaScript流程控制语句_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《JavaScript流程控制语句》由会员分享,可在线阅读,更多相关《JavaScript流程控制语句(24页珍藏版)》请在金锄头文库上搜索。

1、第 5 章 流程控制语句JavaScript 程序是由若干个语句组成的,每一个语句以分号作为结束符。语句可以很简单,也可以很复杂。其中,改变程序正常流程的语句称为控制语句。流程控制语句是用来控制程序中各语句执行顺序的语句,是程序中基本却又非常关键的部分。流程控制语句可以把单个语句组合成有意义的、能完成一定功能的小逻辑模块。本章内容包括: 顺序控制语句; 选择控制语句; 循环控制语句; 其他流程控制语句。通过本章学习,读者应该对几种流程控制语句有很深的理解,并可以利用这几种流程控制语句编写简单的程序。5.1 顺序控制语句JavaScript 语言中,顺序控制语句是最简单的语句。其有如下特点:所有

2、语句按照一定的顺序执行,每一条语句只执行一遍,不重复执行,也没有语句不执行。JavaScript 语言中的顺序控制语句包括表达式语句,函数调用语句,空语句和复合语句等。5.1.1 表达式语句表达式后面跟一个分号就构成了一个表达式语句。最常见的表达式语句为赋值语句。赋值语句是在一个赋值表达式后跟一个分号形成的,程序中很多计算都由赋值语句完成。【示例 5-1】演示几个表达式语句。其代码如下所示。var m=4; /把 4 赋给变量 mvar n=”hello world”; /把字符串 hello world 赋值给 ni=m+n; /把变量 m 和 n 的和赋值给变量 i实际上,任何表达式都可以

3、加上分号而成为语句。【示例 5-2】变量 i 自增 1。i+; /变量 i 的值加 1注意:有些语句写法虽然是合法的,但是由于其没有保留计 算结果,因而并没有 实际意义。如以下代码:a-b;i+-1;5.1.2 函数调用语句函数将在本书第 7 章详细介绍,本节先介绍一下函数调用语句。函数调用语句是由函数调用加上分号组成的。其一般形式如下:函数名(实际参数列);执行函数语句是调用函数体,并把实际参数赋予函数定义中的形式参数,然后执行被调用函数体中的语句。如果是调用无参数函数,则“实参表列”可以没有,但是括号不能省略。如果实参表列包含多个实参,那么各个参数间需要用逗号隔开。实参与形参的个数应该相等

4、,实参与形参按顺序对应,一一传递数据。【示例 5-3】演示函数调用语句。其代码如下所示。function sum(x,y) /定义函数 sum(x,y)return x+y; /返回变量 x 与 y 的和;a=2;b=2;c=sum(a,b); /调用函数 sum(x,y),将值返回给 c当然,函数是一段程序。这段程序可以存在于函数库中,也可能是由用户自己定义,当调用函数时会转到该段程序执行。但是函数调用是以语句的形式出现,它与前后语句之间的关系是顺序执行的。5.1.3 空语句空语句是指只有一个分号的语句,即:;空语句不产生任何动作。在程序中,如果不需要进行任何操作,但是从语句的结构上来说,必

5、须有一个语句时就可以写一个空语句。5.1.4 复合语句在 JavaScript 语言中,可以用大括号 把一些语句括起来,对外看作是一个语句,就构成一个复合语句。【示例 5-4】演示用大括号括起来的复合语句。其代码如下所示。i=2;j=3;m=i*j;复合语句可以出现在允许语句出现的任何地方,在选择结构和循环结构中都会看到复合语句的用途。一般情况下,函数也是由复合语句构成的。5.2 选择控制语句除了简单的顺序控制语句外,JavaScript 语言还定义了一些可以控制程序执行流程的语句,这些语句提供对控制流的选择和循环功能。在 JavaScript 语言中,语句默认都是顺序执行。但如果遇到选择或循

6、环语句,顺序执行的规则就要发生改变。JavaScript 语言中的选择控制语句有:if 语句、ifelse 语句和 switch 语句。5.2.1 if 语句和 ifelse 语句if 语句用于在程序中有条件地执行某一语句序列。if 语句有多种形式的应用,下面分别介绍。1.双路条件选择双路条件选择语句是根据给定的条件进行判断,以决定执行哪一个分支程序段。程序控制结构如图 5-1 所示。if(条件表达式)语句序列 1else语句序列 2代码说明: 首先判断条件表达式是否为真,如果为真就执行语句序列 1; 如果条件表达式为假,就执行语句序列 2。条件t r u e语句序列 1 语句序列 2f a

7、l s e图 5-1 双路条件选择结构if 和 else 都是 JavaScript 语言中的关键字,执行 if 语句时,程序先计算条件表达式的值,如果值为true,则执行语句序列 1,如果值为 false,则执行语句序列 2。注意:分支语句序列如果只有一个语句,就不用大括号括起来;如果超 过一个语句,分支中的所有 语句都需要用大括号括起来,以便与分支之外的语句相区分。【示例 5-5】演示双路条件语句序列。其代码如下所示。双路条件语句序列var m,n; /定义两个变量 m,nm=23; /变量的赋值n=35;if(mn) /条件语句document.write(m 大于 n);else do

8、cument.write(m 小于 n); 代码说明: 首先定义初始化两个变量; 然后判断两个变量的大小,如果 mn,输出“m 大于 n”; 如果 mn 为假,那么就输出 “m 小于 n”。该程序的运行结果如图 5-2 所示。图 5-2 双路条件语句序列2.单路条件选择单路条件选择就是判断该条件表达式是否为真,如果为真就执行括号中的语句序列,否则就不执行该语句序列。程序执行流程如图 5-3 所示。if(条件表达式)语句序列条件是否语句序列图 5-3 单路条件选择这个结构只有 if 分支,没有 else 分支,如果条件表达式成立,则执行 if 分支语句,否则执行 if 语句之后的其他语句。【示例

9、 5-6】演示单路条件选择。其代码如下所示。单路条件语句序列var m,n; /定义两个变量m=23; /变量的赋值n=35;if(m 代码说明:首先定义初始化两个变量 m,n;然后判断表达式 m 多重条件语句序列/*插入 JavaScript 语句*/var score =78; /定义初始化变量 score 的值为 78if(score=90) /多重条件语句document.write(A);else if(score=80)document.write(B);else if(score=70)document.write(C);else if(score 代码说明: 首先定义初始化变量

10、 score; 判断 score=90 是否为真,如果为真就输出 “A”,为假就继续下一个判断; 接着判断 score=80 是否为真,如果为真就输出“B”,为假就继续下一个判断; 再接着判断 score=70 是否为真,如果为真就输出“C”,为假就继续下一个判断; 最后判断 scoreswitch 语句/*插入 javascript 代码 */var score =m; /定义初始化变量 score 的值为字符串 mswitch(score) /判断 score 的值case m: /如果是“m”,就执行以下语句document.write(A);break;case n: /如果是“n ”

11、,就执行以下语句document.write(B);break;default: /默认执行以下语句document.write(default); 代码说明: 该程序先定义初始化变量 score 赋值为 m; switch 语句中如果 score 的值为 m 则输出 A;该程序运行结果如图 5-6 所示。图 5-6 switch 语句5.3 循环语句循环语句是在一定条件下,反复执行某段程序的控制结构,被反复执行的语句序列称为循环体。JavaScript 语言中有 3 种常用的循环语句:for 语句、while 语句、dowhile 语句,除此之外还有 label语句,break 语句,con

12、tinue 语句。本节将详细讲解这几种循环语句。5.3.1 for 语句for 语句通常用于预先知道循环次数的情况,其一般语法格式如下:for(表达式 1;表达式 2;表达式 3)代码块其中表达式 1 可以是一个初始化语句,一般用于对一组变量进行初始化或赋值。表达式 2 用作循环的条件控制,是一个条件或逻辑表达式,当其值为 true 时,继续下一次循环,当其值为 false 时,则终止循环。表达式 3 在每次循环结束后执行,一般用于改变控制循环的变量。代码块在表达式 2 为 true时执行。for 语句的具体执行过程是这样的: 执行表达式 1; 计算表达式 2 的值; 如果表达式 2 的值为

13、true,先执行后面的语句,再执行表达式 3,然后转向步骤 1;如果表达式 2 的值为 false,则结束整个 for 循环。【示例 5-9】使用 for 语句循环输出 i 的值。其代码如下所示。 for 语句/*插入 JavaScript 代码*/ for(var i=0;i); /输出 i,是换行符代码说明: 该程序中 i 的初始值为 0,只要当 iwhile 语句var i=1;while(i); /输出 JavaScriptii+;代码说明: 首先定义一个变量 i; 该程序中只要当 i 小于 6,就会循环执行输出语句,并将 i 自增 1。该程序运行结果如图 5-9 所示。图 5-9 w

14、hile 语句5.3.3 dowhile 语句dowhile 语句的一般语法形式如下:do语句;while (条件表达式);do-while 语句每一次循环执行一次语句,然后计算条件表达式是否为 true,如果是则继续执行循环,否则结束循环。dowhile 循环中的语句至少会执行一次,这点是与 while 语句不同的,而 while 语句当条件第一次不满足时,语句一次也不能被执行。dowhile 语句的执行流程如图 5-10 所示。循环体表达式t r u ef a l s e图 5-10 dowhile 语句的执行流程与 while 语句一样,在使用 dowhile 语句时也要注意在代码块中一

15、定要能够改变循环条件中的变量,dowhile 语句的一般表达式有以下两个步骤:(1) 执行循环中的代码块;(2) 判断循环条件是否为真,如果循环条件为真,则返回步骤(1),继续执行循环,如果循环条件为假,则跳出循环。【示例 5-11】定义 dowhile 语句,当 ido.while 语句var i=1;do /dowhile 语句 document.write(JavaScript,i,);i+; while(i 代码说明: 首先定义一个变量 i,并赋值为 1; 然后使用 dowhile 语句,当 ibreak 语句 /*插入 JavaScript 代码*/for(i=1;i);/*当 i=5 时,跳出循环*/if(i=5) break; /break 语句跳出循环代码说明: 该程序中 for 语句循环输出 i 的值; 当 i 等于 5 时,跳出循环。【示例 5-12】的效果如图 5-12 所示。图 5-12 break 语句break 语句还有另外一种使用方式:break label。在使用 label 的情况下,执行到 break label 立即跳出 label 标识的代码块。【示例 5-13】用一个 age 变量记录了人的年龄,程序在页面上显示年龄,并且,当年龄小于 2

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号