function add(){
num1 = parseInt(document.getElementById("op1").value);
num2 = parseInt(document.getElementById("op2").value);
alert(sum(num1,num2));
}
add函数体内的语句就是顺序结构,函数从第一条语句开始执行,按顺序执行,直至最后一条语句。
if(条件表达式) {
代码段1
}else {
代码段2
}
if和else是JS关键字,条件表达式必须括在一对圆括号之内,表达式返回布尔值。代码段是一条或多条JS语句。如果条件表达式返回的值为真,则执行代码段1。如果条件表达式返回的值为假,则执行代码段2。
if(条件表达式) {
代码段1
}
上面的条件结构只处理条件表达式返回真值的情况。
If(条件表达式1){
代码段1;
} else if(条件表达式2){
代码段2;
} else if(条件表达式3) {
代码段3;
}
……
else {
代码段n;
}
if(条件表达式){
if(条件表达式) {
代码段;
}
else {
代码段;
}
}
else {
代码段;
}
[h1]switch结构[/h1]
switch (表达式){
case 常量表达式1:
代码段1;
break;
case 常量表达式2:
代码段2;
break;
case 常量表达式3:
代码段3;
break;
………
default:
代码段n;
}
其中,switch关键字后的表达式必须是一个整型表达式,即计算后其值为int类型,或可以转换为int的类型,如char等。case关键字后面的常量表达式要求是整型常量组成的表达式,通常是字符、数字等。
for(表达式1; 表达式2; 表达式3;)
{
代码段;
}
表达式1:通常用来给循环变量赋初值,一般是赋值表达式,也允许在for语句外给循环变量赋初值,此时可以省略该表达式;
[h2]for/in循环[/h2]
for(variable in object) {
代码段;
}
其中,variable是循环变量,in是JS关键字,object是对象,该结构用于遍历对象的属性。
while( 条件表达式 ) {
代码段;
}
其中,条件表达式是循环条件,代码段为循环体。while循环结构的执行流程:计算条件判断表达式的值,当值为真(非0)时,执行循环体语句,一旦条件为假,就停止执行循环体。如果条件在开始时就为假,则不执行循环体语句直接退出循环。
do{
代码段;
}while(条件);
do-while循环与while循环的不同在于:它先执行循环体中的语句,然后再判断条件是否为真。如果为真则继续循环,如果为假,则终止循环。因此,do-while循环至少要执行一次循环语句。
for(var i = 0; i<5;i++) {
for(var j = 0;j<5;j++) {
document.write(i*j);
}
}
上面的案例代码就是嵌套循环,第一层for循环称为外循环,第二层for循环称为内循环。
function test() {
var i = 0;
while (i < 7) {
i++;
if (i == 5) {
break;
}
document.write(i);
}
}
test()函数用于输出0至4的数。i为循环变量,初始值为0,while循环条件为i<7,在循环体内判断i是否等于5,若等于5就退出while循环。因此test()函数只输出0至4的数。
function test() {
var i;
var sum = 0;
for (i = 1; i <= 100; i++) {
// 判断i的余数是否是3
if (i % 10 == 3) {
// 执行下一轮循环
continue;
}
sum += i;
}
document.write(sum)
}
test()函数求整数1至100的累加值,但要求跳过所有个位为3的数。
<html>
<head>
<title>JavaScript开发案例</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
// 简单条件案例
function condition_01(num){
if( num > 100 ){
document.getElementById("id_result").value = "condition_01函数:参数num大于100"
}else{
document.getElementById("id_result").value = "condition_01函数:参数num小于100"
}
}
//多重条件案例
function condition_02(num){
if (num >= 90)
document.getElementById("id_result").value = "condition_02函数:优"
else if ((num >= 80) && (num < 90))
document.getElementById("id_result").value = "condition_02函数:良"
else if ((num >= 60) && (num < 80))
document.getElementById("id_result").value = "condition_02函数:中"
else
document.getElementById("id_result").value = "condition_02函数:差"
}
//switch结构案例
function condition_03(score){
var grade;
switch (parseInt(score / 10)) {
case 10:
grade = "A";
break;
case 9:
grade = "B";
break;
case 8:
grade = "C";
break;
case 7:
grade = "D";
break;
case 6:
grade = "E";
break;
default:
grade = "F";
}
document.getElementById("id_result").value = "condition_03函数:" + grade;
}
//for循环结构案例,输出自然数的阶乘
function loop_for(num){
factorial = 1;
for (var count = 1; count <= num; count++) {
factorial = factorial * count;
}
document.getElementById("id_result").value = "loop_for函数:" + factorial;
}
//while循环结构案例,输出摄氏温度与华氏温度的对照表
function loop_while(num){
var count = 0;
var c = 0;
var f;
var content = "";
// 输出控制在10条以内
while (c <= 250 && count < 10) {
count++;
content += "摄氏温度:" + count + " "
//计算华氏温度
f = c * 9 / 5.0 + 32.0;
content += "华氏温度:" + f + " "
c = c + 20;
}
document.getElementById("id_result").value = "loop_while函数:" + content;
}
</script>
</head>
<body>
<h3>JavaScript开发案例</h3>
<hr>
<form action="/login.jsp">
<p>执行结果:<input type="text" id="id_result" size="60" value=""/></p>
<p><input type="button" value="简单条件结构" onclick="condition_01(80)"/></p>
<p><input type="button" value="多重条件结构" onclick="condition_02(96)"/></p>
<p><input type="button" value="switch结构" onclick="condition_03(86)"/></p>
<p><input type="button" value="for循环结构" onclick="loop_for(6)"/></p>
<p><input type="button" value="while循环结构" onclick="loop_while()"/></p>
</form>
</boyd>
<html>
案例代码执行界面如下图所示: