资源描述
WE ARE CHANGING,第二章,JavaScript流程控制和函数,掌握if语句和switch语句 掌握循环控制语句3种结构 掌握常用的内置函数 掌握函数的定义与调用,本章目标,简单if语句 If else 语句 多重if语句,if语句,if(条件表达式) 语句块; ,if(条件表达式) 语句块1; else 语句块2; ,if(条件表达式) 语句块1; else if(条件表达式2) 语句块2; else if(条件表达式n) 语句块n; else 语句块n +1; ,4,if-else 示例,输入分数:50 显示考试不及格对话框, = 60) /判断分数是否=60,返回true或false alert(考试及格!); /如果分数=60为true则显示及格的消息 else alert(考试不及格!); /如果分数 ,多重if 示例, = 90) /判断分数是否=90,返回true或false alert(你的成绩一级棒啊!); else if(score=80 /-,输入不同分数,显示不同的对话框,这里我们碰到了短路与 和短路和的问题,switch多分支语句,switch语句和示例,switch (表达式) case 常量1 : JavaScript语句1; break; case 常量2 : JavaScript语句2; break; . default : JavaScript语句3; , ,7,while(条件表达式) 语句; ,while循环 do-while循环 for循环,循环语句,do 语句; while (条件表达式);,for(初始化; 条件; 增量) 语句; ,8,2008年全球福布斯财富排行榜(前5位) 循环输出字符 打印99乘法表,循环示例,); while(b); while(c); while(d); while(e, 请输入几个字母看看效果:); do var character; character = prompt(请输入一个字母,输入N或n结束:,B);/输入对话框 document.write( +character+); while(character!=n /- , ); /每行结束换行 /- ,9,break语句:跳出正在执行的循环结构 求前10个数的和 continue语句:忽略continue后面的语句,从下一次循环开始执行 输出100以内的偶数,循环控制break 和continue, , ,联合使用break和continue语句, 求前10个偶数的和,怎样写呢?,函数的含义:类似于Java中的方法,是执行特定任务的语句块。,什么是函数,如何希望点击某个按钮后才显示“今天心情好好啊!”, 怎么办?,11,什么是函数,1、在页面中加入一个表单和一个按钮。 2、把要显示的代码放置到函数中,当点击按钮时,才调用该函数显示“今天心情好好啊!”,代码:, 无参数无返回值函数 ,12,函数的定义:语法 函数的调用: 函数调用和表单元素的事件一起使用, 调用格式为 :事件名“函数名”,函数的定义和调用,注意事项: 函数名区分大小写,且不能相同,更不能使用JavaScript的关键字。 在function关键字之前不能指定返回值的数据类型。 函数定义中 是指可选的,也就是说,自定义的函数可以带参数,也可以不带参数,如果有参数,参数可以是变量、常量或表达式。自定义函数可以有返回值,也可以没有,如果省略了return语句,则函数返回undefined。 函数的参数列表中不象Java一样指定参数的数据类型,只写参数量名字。 参数列表中如果有多个参数,则各参数之间需要以“,”隔开。 函数必须放在标签之间。 函数的定义最好放在网页的部分。 定义函数时并不执行组成该函数的代码,只有调用函数时才执行代码。,function 函数名( 参数列表 ) 程序语句 return 返回值; ,13,计算任意给定的区间的数的和,有参数和返回值的函数,定义带参数的函数,用两个形参来分别表示左右区间 在函数里循环累加区间里的数,把累加和返回 在调用函数的代码里传如区间值,使用变量来接收返回值,显示和。,代码:, 有参数有返回值函数 var sum= 0 ; sum = sumbetween(1,100); /调用sumbetween函数 document.write(1至100之间所有整数的和为:+sum); ,有没有可能在函数的定义时,不给出参数列表,在函数的调用时给出实参?,没有参数的函数,可以,在函数内部使用arguments对象来访问函数被调用时程序传给该函数的所有实参。,代码:, 有参数有返回值函数 var sum= 0 ; sum = sumbetween(1,100); /调用sumbetween函数 document.write(1至100之间所有整数的和为:+sum); ,全局变量: 指在标签中声明的变量。 独立于所有函数之外,作用范围是该变量声明后的所有语句,包括其后定义在的函数中的语句。 局部变量: 在函数中声明的变量只有在该函数中、且位于该变量声明之后的程序代码才可以使用这个变量。 函数的参数列表中的变量也是属于该函数的局部变量。 局部变量一定是属于某个函数,故对其后的其它函数和脚本代码来说都是不可见的(不能访问)。 如果在其后的其它函数和脚本代码中声明了与这个局部变量同名的变量,则这两个变量没有任何关系。,全局变量和局部变量, 全局变量和局部变量 var number=100,sum=100; /声明2个全局变量 function changeValue() var number = 10; /声明和全局变量同名的局部变量number document.write(number = +number+); /输出局部变量number document.write(sum = +sum+); /输出全局变量sum changeValue(); /调用函数 document.write( number = +number+); /输出全局变量number ,parseInt (String) 将字符串转换为整型数字 如: parseInt (“86”)将字符串“86”转换为整型值86 parseFloat(String) 将字符串转换为浮点型数字 如: parseInt (“34.45”)将字符串“34.45”转换为浮点值34.45 isNaN()函数 判断一个变量或一个字符串是否为NaN。如果是,则返回true,不是则返回false。例如:isNaN( parseInt(“ab”) )将返回true,isNaN(“12”)将返回false。 eval()函数 eval函数将一个字符串作为一段JavaScript表达式执行,并返回执行的结果。,内置函数,17,简单计算器 使用evel函数,内置函数示例, 全局变量和局部变量 function sum() var num1=parseFloat(document.myform.first.value); var num2=parseFloat(document.myform.second.value); if(isNaN(num1)=true) alert(document.myform.first.value+不能转换为一个数字!); return; if(isNaN(num2)=true) alert(document.myform.second.value+不能转换为一个数字!); return; document.myform.result.value =num1+num2; , eval函数的用法 function calc() var re = eval(document.form1.express.value); document.form1.result.value = re; 表达式: ,if条件判断语句,可以多重嵌套使用 switch用于多分支条件,书写更直观,整洁 break语句:跳出正在执行的循环结构 continue语句:忽略continue后面的语句,从下一次循环开始执行 函数调用和表单元素的事件一起使用,调用格式为 :事件名“函数名” function函数可以不带参数,也可以带多个参数,还可以有返回值(return) 局部变量在函数内部定义,全局变量在函数外部定义,总结,
展开阅读全文