📄 js04.htm
字号:
<HTML>
<HEAD>
<TITLE>第四章 流程控制</TITLE>
<LINK rel="stylesheet" type="text/css" href="js.css">
</HEAD>
<BODY>
<H1><A name="第四章 流程控制">第四章 流程控制</A> <A href="index.htm">主目录</A></H1>
<HR>
<UL>
<LI><A href="#4.1 使用对话框">4.1 使用对话框</A><UL>
<LI><A href="#4.1.1 警示对话框">4.1.1 警示对话框</A></LI>
<LI><A href="#4.1.2 确认对话框">4.1.2 确认对话框</A></LI>
<LI><A href="#4.1.3 提示对话框">4.1.3 提示对话框</A></LI>
</UL>
</LI>
<LI><A href="#4.2 JavaScript程序的基本流程">4.2 JAVASCRIPT程序的基本流程</A></LI>
<LI><A href="#4.3 分支结构">4.3 分支结构</A><UL>
<LI><A href="#4.3.1 if 语句">4.3.1 if 语句</A></LI>
<LI><A href="#4.3.2 switch 语句">4.3.2 switch 语句</A></LI>
</UL>
</LI>
<LI><A href="#4.4 循环结构">4.4 循环结构</A><UL>
<LI><A href="#4.4.1 for 语句">4.4.1 for 语句</A></LI>
<LI><A href="#4.4.2 while 语句">4.4.2 while 语句</A></LI>
<LI><A href="#4.4.3 do while 语句">4.4.3 do while 语句</A></LI>
<LI><A href="#4.4.4 在循环中使用break和continue 语句">4.4.4 在循环中使用break和continue 语句</A></LI>
<LI><A href="#4.4.5 循环的嵌套">4.4.5 循环的嵌套</A></LI>
</UL>
</LI>
<LI><A href="#4.5 调试程序">4.5 调试程序</A><UL>
<LI><A href="#4.5.1 排除语法错误">4.5.1 排除语法错误</A></LI>
<LI><A href="#4.5.2 排除语义错误">4.5.2 排除语义错误</A></LI>
<LI><A href="#4.5.3 使用Microsoft 脚本编辑器调试程序">4.5.3 使用Microsoft 脚本编辑器调试程序</A><BR>
</LI>
</UL>
</LI>
</UL>
<H2><A name="4.1 使用对话框">4.1 使用对话框</A>
<A href="#第四章 流程控制">(目录)</A></H2>
<UL>
<LI>3种对话框: 警示、确认和提示对话框。</LI>
</UL>
<H3><A name="4.1.1 警示对话框">4.1.1 警示对话框</A>
<A href="#第四章 流程控制">(目录)</A></H3>
<UL>
<LI>由alert()方法显示,含一个“确认”按钮。</LI>
<LI><A href="sample/s04_01.htm">例4.1</A>,在显示其他内容之前,先显示一个警示对话框。</LI>
</UL>
<H3><A name="4.1.2 确认对话框">4.1.2 确认对话框</A>
<A href="#第四章 流程控制">(目录)</A></H3>
<UL>
<LI>由confirm()方法显示,有"确认"和“取消”按钮,并返回布尔值。</LI>
<LI><A href="sample/s04_02.htm">例4.2</A>,根据用户回答而显示不同内容。</LI>
</UL>
<H3><A name="4.1.3 提示对话框">4.1.3 提示对话框</A>
<A href="#第四章 流程控制">(目录)</A></H3>
<UL>
<LI>由prompt()方法显示,提供一个文本框要求用户输入</LI>
<LI><A href="sample/s04_03.htm">例4.3</A>,要求用户输入姓名。</LI>
<LI><A href="sample/s04_04.htm">例4.4</A>,输入URL</LI>
</UL>
<H2><A name="4.2 JavaScript程序的基本流程">4.2 JavaScript程序的基本流程</A>
<A href="#第四章 流程控制">(目录)</A></H2>
<UL>
<LI>语句执行说明:</LI>
</UL>
<BLOCKQUOTE>
<BLOCKQUOTE>
<P><script language=javascript><BR>
var visited,show_text;<BR>
visited = confirm("您来过中大吗?");<BR>
show_text = visited?"您也认为中大很美吧!":"欢迎您有空来中大参观!";<BR>
document.write(show_text);<BR>
</script></P>
</BLOCKQUOTE>
</BLOCKQUOTE>
<UL>
<LI>顺序结构:按照语句的书写顺序从头到尾依次执行。</LI>
<LI>另外,分支结构、循环结构。</LI>
</UL>
<H2><A name="4.3 分支结构">4.3 分支结构</A>
<A href="#第四章 流程控制">(目录)</A></H2>
<UL>
<LI>分支结构包括if语句和switch语句</LI>
<LI>根据一定条件去执行一条语句或语句组。</LI>
</UL>
<H3><A name="4.3.1 if 语句">4.3.1 if 语句</A>
<A href="#第四章 流程控制">(目录)</A></H3>
<H4>一、if…else 语句</H4>
<UL>
<LI>形式:</LI>
</UL>
<P>if(condition)<BR>
statement1;<SPAN style="position: absolute; left: 231; top: 1423"><IMG border="0" src="js_04_01.gif" width="283" height="202"></SPAN><BR>
else<BR>
statement2;</P>
<P> </P>
<P> </P>
<UL>
<LI><A href="sample/s04_05.htm">例4.5</A>,分别输入两个数给变量x,y,然后求出这两个变量的最大值。</LI>
</UL>
<P align="center"><IMG border="0" src="js_04_02.gif" width="239" height="266"></P>
<H4>二、没有else部分的if语句</H4>
<UL>
<LI>简单形式:<BR>
if (condition) statement;</LI>
<LI><A href="sample/s04_06.htm">例4.6</A>,改写例4.5,要求不使用else部分。</LI>
</UL>
<H4><BR>
代码格式问题:</H4>
<UL>
<LI>if语句的书写是比较灵活的,if语句的各个部分既可以分行书写,也可以在同一行中书写。</LI>
<LI>如:<BR>
if(x>y) max=x;else max=y;<BR>
或<BR>
if(x>y) max=x;<BR>
else max=y;<BR>
或<BR>
if(x>y)<BR>
max=x;else max=y;</LI>
<LI>建议格式:<BR>
if(x>y) max=x;else max=y; <BR>
或<BR>
if(x>y) <BR>
max=x; //缩进2~4个空格<BR>
else<BR>
max=y; //相同。<BR>
</LI>
</UL>
<H4>三、使用语句组</H4>
<UL>
<LI>用大括号{}括起来的一组语句序列称为语句组,其语法作用等同于单条语句。</LI>
<LI><A href="sample/s04_07.htm">例4.7</A>,求最大值和最小值。<BR>
</LI>
</UL>
<H4>四、论变量的使用</H4>
<UL>
<LI>变量保存初值和最终计算结果</LI>
<LI>也可引入中间变量保存中间结果</LI>
<LI><A href="sample/s04_08.htm">例4.8</A>,两个数排序。引入中间变量temp的使用</LI>
</UL>
<H4>五、if语句的嵌套</H4>
<UL>
<LI>在一个JavaScript程序中,可以把一个if语句当成另外一个if语句的语句部分来用,这就是所谓的if语句的嵌套。</LI>
<LI><A href="sample/s04_09.htm">例4.9</A>,根据成绩给出学生的考评:如果成绩>=85,考评“优”,否则如果成绩>=60,考评“及格”,否则考评为“不及格”。</LI>
</UL>
<H3><A name="4.3.2 switch 语句">4.3.2 switch 语句</A>
<A href="#第四章 流程控制">(目录)</A></H3>
<UL>
<LI>switch语句根据表达式的值,选择不同的分支执行。</LI>
</UL>
<BLOCKQUOTE>
<BLOCKQUOTE>
<P>switch()<BR>
{<BR>
case 常数表达式1:语句1;break;<BR>
case 常数表达式2:语句2; break;<BR>
…<BR>
case 常数表达式n:语句n; break;<BR>
default: 语句n+1; break;<BR>
}</P>
</BLOCKQUOTE>
</BLOCKQUOTE>
<UL>
<LI><A href="sample/s04_10.htm">例4.10</A>,常识问答,请选择“中国的首都在哪个城市?
A.香港B.广州C.北京D.上海”。</LI>
</UL>
<H2><A name="4.4 循环结构">4.4 循环结构</A>
<A href="#第四章 流程控制">(目录)</A></H2>
<UL>
<LI>常用循环语句for语句、while语句以及do…while语句。</LI>
</UL>
<H3><A name="4.4.1 for 语句">4.4.1 for 语句</A>
<A href="#第四章 流程控制">(目录)</A></H3>
<UL>
<LI>for语句的格式是:<BR>
for(初值表达式;循环判定式;更新表达式) 循环体语句</LI>
<LI>执行流程<BR>
1.计算初值表达式;<BR>
2.计算循环判定式(即,条件表达式)的值;<BR>
3.如果循环判定式的值为true就执行步骤4,否则退出for语句;<BR>
4.执行循环体语句,之后再计算更新表达式;<BR>
5.重复执行步骤2,3,4,直至退出循环。</LI>
</UL>
<P align="center"><BR>
<IMG border="0" src="js_04_03.gif" width="521" height="269"></P>
<UL>
<LI><A href="sample/s04_11.htm">例4.11</A>,求1+2+3+…+100的累计和。</LI>
<LI><A href="sample/s04_12.htm">例4.12</A>,在页面上通过脚本显示6级标题。</LI>
</UL>
<H3><A name="4.4.2 while 语句">4.4.2 while 语句</A>
<A href="#第四章 流程控制">(目录)</A></H3>
<UL>
<LI>格式:<BR>
while(循环判定式) 循环体语句</LI>
<LI>执行流程<BR>
1.计算循环判定式的值;<BR>
2.如果循环判定式的值为true,则执行循环体语句,否则退出循环;<BR>
3.重复执行步骤1,2,直至退出循环。</LI>
</UL>
<P align="center"><IMG border="0" src="js_04_04.gif" width="503" height="244"></P>
<UL>
<LI><A href="sample/s04_13.htm">例4.13</A>,使用while语句求1+2+3+…+100的累计和。</LI>
</UL>
<H3><A name="4.4.3 do while 语句">4.4.3 do while 语句</A>
<A href="#第四章 流程控制">(目录)</A></H3>
<UL>
<LI>格式:<BR>
do 循环体语句 while(循环判定式);</LI>
<LI>执行流程<BR>
1.执行循环体语句;<BR>
2.计算循环判定式的值;<BR>
3.如果循环判定式的值为true,则转去执行步骤1,否则退出循环。</LI>
</UL>
<P align="center"><IMG border="0" src="js_04_05.gif" width="489" height="270"></P>
<UL>
<LI><A href="sample/s04_14.htm">例4.14</A>,使用do…while语句求1+2+3+…+100的累计和。</LI>
<LI><A href="sample/s04_15.htm">例4.15</A>,编写一个二位整数相加的测试程序。要求程序随机生成两个二位整数,提示用户回答它们的相加结果,根据用户回答给出“答对”或“答错”的提示,并且允许用户决定是否继续答题,如果继续就再出题,否则就结束。</LI>
</UL>
<H3><A name="4.4.4 在循环中使用break和continue 语句">4.4.4 在循环中使用break和continue 语句</A>
<A href="#第四章 流程控制">(目录)</A></H3>
<UL>
<LI>break语句可跳出switch语句。break语句也跳出整个循环语句。</LI>
<LI>continue跳过循环体中未执行的语句,结束本次循环,跳至求循环判定式,决定是否继续循环。</LI>
<LI>区别:continue语句只结束本次循环,而break语句则结束整个循环。</LI>
<LI><A href="sample/s04_16.htm">例4.16</A>,使用break语句实现例4.15中的测试程序。</LI>
<LI><A href="sample/s04_17.htm">例4.17</A>,累计用户在提示对话框中输入的正数,如果在提示对话框中输入”Q”或者单击“取消”按钮就结束。</LI>
</UL>
<H3><A name="4.4.5 循环的嵌套">4.4.5 循环的嵌套</A>
<A href="#第四章 流程控制">(目录)</A></H3>
<UL>
<LI>在一个循环语句的循环体中也可以包含另一个循环语句,这称为循环的嵌套。</LI>
<LI>双重循环</LI>
<LI>多重循环</LI>
<LI><A href="sample/s04_18.htm">例4.18</A>,在页面上显示一个“9×9乘法表”。</LI>
</UL>
<H2><A name="4.5 调试程序">4.5 调试程序</A>
<A href="#第四章 流程控制">(目录)</A></H2>
<UL>
<LI>错误分类:一类是语法错误;另一类是语义错误。</LI>
<LI>所谓调试程序就是排除程序中的错误。</LI>
</UL>
<H3><A name="4.5.1 排除语法错误">4.5.1 排除语法错误</A>
<A href="#第四章 流程控制">(目录)</A></H3>
<UL>
<LI>语法错误是指代码不符合JavaScript的语法规则。</LI>
<LI>当浏览器执行或制作工具(如FrontPage)预览含有语法错误的页面时,它会提示出现了什么错误以及出错的代码在哪一行。</LI>
<LI><A href="sample/S04_19.htm">例4.19</A>,程序有语法错误,请排除。</LI>
</UL>
<H3><A name="4.5.2 排除语义错误">4.5.2 排除语义错误</A>
<A href="#第四章 流程控制">(目录)</A></H3>
<UL>
<LI>语义错误是代码符合语法规则,但执行结果不符要求。</LI>
<LI>原因:<UL>
<LI>没有弄清楚问题</LI>
<LI>算法有误</LI>
<LI>流程控制语句使用不当或者变量使用不当</LI>
</UL>
</LI>
</UL>
<H3><A name="4.5.3 使用Microsoft 脚本编辑器调试程序">4.5.3 使用Microsoft 脚本编辑器调试程序</A>
<A href="#第四章 流程控制">(目录)</A></H3>
<UL>
<LI>使用它对程序进行调试。</LI>
<LI><A href="sample/S04_20.htm">例4.20</A>,交换两个变量x,y的值,但有错误,请排除。</LI>
<LI>调试步骤<UL>
<LI>第一步:使用脚本编辑器打开文件。</LI>
<LI>第二步:设置断点</LI>
<LI>第三步:执行到断点,并打开变量监视窗口</LI>
<LI>第四步:逐语句执行,观察变量x,y值的变化</LI>
<LI>第五步:找到问题后,结束本次调试</LI>
</UL>
</LI>
</UL>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -