网页编程技术_第4章 JavaScript.ppt
《网页编程技术_第4章 JavaScript.ppt》由会员分享,可在线阅读,更多相关《网页编程技术_第4章 JavaScript.ppt(86页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、网页编程技术网页编程技术彭彭 丽丽旅游学院旅游学院教育科学与技术系教育科学与技术系E-mail:pengliscfc.edu第第4章章 使用使用JavaScript编写网页编写网页 4.1 JavaScript概述概述 4.2 JavaScript语法基础语法基础 4.3 JavaScript内置对象和函数内置对象和函数 4.4 JavaScript的事件与事件处理程序的事件与事件处理程序第第4章章 使用使用JavaScript编写网页编写网页4.1 JavaScript概述概述n Netscape公司为了进一步扩充它的浏览器的功能,开发了一种可以嵌入在Web主页中的编程语言。在早期这种语言叫
2、做LiveScript,后来为了利用Sun公司开发的Java语言的功能并借用它的流行性,把它改名为JavaScript。n前身叫做Livescript,是一种基于对象和事情驱动、并有安全性的解释性(就是说,代码执行不进行预编译)脚本语言。n通过 JavaScript,您可以重构整个 HTML 文档。我们可以添加、移除、改变或重排页面上的项目。nJavaScript 是因特网上最流行的脚本语言,并是因特网上最流行的脚本语言,并且可在所有主要的浏览器中运行,比方说且可在所有主要的浏览器中运行,比方说 Internet Explorer、Mozilla、Firefox、Netscape、和、和 Op
3、era。4.1.1 JavaScript的特点1JavaScript是一种脚本语言2JavaScript是基于对象的语言3JavaScript是事件驱动的语言4JavaScript是安全的语言5JavaScript是与平台无关的语言第第4章章 使用使用JavaScript编写网页编写网页而基于对象的基本特征,就是采用事件驱动(event-driven)。通常鼠标或热键的动作我们称之为事件(Event),而由鼠标或热键引发的一连串程序的动作,称之为事件驱动(Event Driver)。4.1.2 JavaScript的功能nJavaScript 为 HTML 设计师提供了一种编程工具 nJava
4、Script 可以将动态的文本放入 HTML 页面 nJavaScript 可以对事件作出响应 nJavaScript 可以读写 HTML 元素 nJavaScript 可被用来验证数据 nJavaScript 可被用来检测访问者的浏览器 nJavaScript 可被用来创建 cookies 第第4章章 使用使用JavaScript编写网页编写网页4.1.3 JavaScript与其他语言的比较1JavaScript与Java2JavaScript与VBScript3.javaScript与Jscript第第4章章 使用使用JavaScript编写网页编写网页4.1.3 JavaScript与
5、其他语言的比较1、Javascript和javan 是两个公司开发的两个不同产品,作用和用途不一样,但两者语法上有很多相似之处,javascript并不是java的子集。n在概念和设计方面,Java 和 JavaScript 是两种完全不同的语言。Java(由太阳微系统公司开发)很强大,同时也是更复杂的编程语言,就像同级别的 C 和 C+。第第4章章 使用使用JavaScript编写网页编写网页4.1.3 JavaScript与其他语言的比较3、Javascript和Jscriptu 最开始web上只有静态的html,为了满足更好的交互需求,netscape开发了在Navigator中使用的L
6、iveScript语言,后改名为JavaScript,Microsoft发行jscript用于internet explorer。u 最初的jscript和javascript差异过大,web程序员不得不痛苦的为两种浏览器编写两种脚本。于是诞生了ECMAScript,它是一种国际标准化的javascript版本。现在的主流浏览器都支持这种版本。我们写程序的时候最好写而不是,因为javascript是一个通用的名称,所有浏览器都认识,而jscript只有IE认识。第第4章章 使用使用JavaScript编写网页编写网页4.1.4 JavaScript与HTML 为了运用JavaScript控制H
7、TML页面上的对象,JavaScript的代码必须与HTML代码结合在一起。将JavaScript嵌入HTML页面时,必须使用SCRIPT标签,该标签使用形式如下:/JavaScript代码标签通知浏览器,有脚本嵌入到标签中。/document.write(Hello World!);上面的代码会在 HTML 页面中产生这样的输出:Hello World!4.1.5 JavaScript在HTML中的位置n一般在一般在 head部分放部分放JavaScript 用到的函数的定义,在用到的函数的定义,在body部分调部分调用执行。用执行。n实例实例head 部分部分 包含函数的脚本位于文档的 h
8、ead 部分。这样我们就可以确保在调用函数前,脚本已经载入了。body 部分部分 执行位于 body 部分的脚本。外部外部 JavaScript 如何访问外部脚本。注意:注意:外部文件的js不能包含 标签。然后把.js 文件指定给 标签中的“src”属性,就可以使用这个外部文件了。第第4章章 使用使用JavaScript编写网页编写网页 4.2 JavaScript语法基础 JavaScript是一种易学易用的脚本语言,目的是面向与用户动态交互的脚本开发,扩展HTML页面的功能,而不是开发大型复杂的程序,所以相对而言,JavaScript的语法规则较少而且较为简单。但作为一门编程语言,它有自己
9、的语法规则,自己的关键字、指令和对象。4.2 JavaScript语法基础语法基础4.2.1 Javascrip的保留关键字4.2 JavaScript语法基础语法基础4.2.2 变量1JavaScript的数据类型 变量的定义类型类型(关键字)关键字)说明说明字符串类型字符串类型(String)用引号引起的一串字符(用引号引起的一串字符(“”,)数数值值类类型型(int,float,double)整数或者实数整数或者实数布尔类型(布尔类型(boolean)逻辑值,有真或假两种(逻辑值,有真或假两种(true,false)空类型(空类型(null)代表一个空值代表一个空值对象类型(对象类型(O
10、bject)代表代表JavaScriptJavaScript中的一些对象中的一些对象未定义数据类型(unDefined)如果对象属性不存在,声明了变量但从未赋 值,将返回undefined 4.2 JavaScript语法基础语法基础2变量的定义JavaScript中采用弱类型变量,变量可以不做声明和不做类型说明,而在使用或赋值时确定类型。但为了形成良好的编程风格,变量应该采取先定义再使用的方法。JavaScript中变量的定义用关键字var来实现。例如,定义一个名为id的变量:var id;var x=5;var carname=Volvo;y=“hello”;/如果您所赋值的变量还未进行过
11、声明,该变量会自动声明。4.2 JavaScript语法基础语法基础3变量的命名变量的命名要遵循如下的规则:(1)变量名不能与保留字冲突。(2)变量名必须以字母或者下划线(_)或者$开头,不能用数字或者其他非字母字符作为变量名开头。(3)变量名中不能包含空格。(4)JavaScript是区分大小写的,所以给变量命名时要考虑大小写的问题。4.2 JavaScript语法基础语法基础4.2.3 表达式与运算符按照运算符的功能可以分为:算术运算符:+,-,*,/,%,+,-,-(取负)逻辑运算符:&,|,!比较运算符:=,!=,,=,1&54,结果为true 21&51|51|54,其结果也为tru
12、e(3)”!“:当表达式的逻辑值为true时返回结果false,当表达式的逻辑值为false时返回结果true。例如:!(21)结果为false。4.2 JavaScript语法基础语法基础3.比较运算符:=,=,!=,,=,=;x=“5”为true4.2 JavaScript语法基础语法基础4.赋值运算符:=,+=,-=,*=,/=,%=(1)“+=”:表示左、右两边数相加,结果赋给左边变量。例如:X=5,Y=5,X+=Y将10赋给了X。(2)“-=”:表示左、右两边数相减,结果赋给左边变量。例如:X=5,Y=5,X-=Y将0赋给了X。(3)“*=”:表示左、右两边数相乘,结果赋给左边变量。
13、例如:X=5,Y=5,X*=Y将25赋给了X。(4)“/=”:表示右边数除左边数,结果赋给左边变量。例如:X=5,Y=5,X/=Y将1赋给了X。(5)“%=”:表示右边数除左边数,余数赋给左边变量。例如:X=25,Y=7,X%=Y将4赋给了X。4.2 JavaScript语法基础语法基础5.条件运算符:?:(1)表达式结构如下:(条件)?结果1:结果2(2)运算过程是:首先计算条件(逻辑表达式或比较表达式)的值,值为true表达式的值为结果1,值为false表达式的值为结果2。例如:(day=“星期六”)?“今天是周末”:“今天不是周末”4.2 JavaScript语法基础语法基础6.字符串连
14、接运算符:+n字符串运算符只有一个合并运算符“+”,表示两个字符串的合并,例如:abc+“您好!”,这个表达式的值为“abc您好!”。n注意:如果把数字与字符串相加,结果将成为字符串x=5+5;document.write(x);/10document.write();x=5+5;document.write(x);/55document.write();4.2 JavaScript语法基础语法基础7.运算符优先级优先级从高到低顺序为:(1)乘、除、模(*、/、%)。(2)加、减(+、-)。(3)比较(、=、=、=、!=、=)。(4)逻辑与(&)。(5)逻辑或(|)。(6)条件(?:)。例如:
15、(4*5+1822)?”对”:”错“的值为什么?错4.2 JavaScript语法基础语法基础8.一个完整的程序一个完整的程序var question=10+20是多少是多少?;var answer=30;var x1=计算正确计算正确;var x2=计算错误计算错误;var x5=prompt(question,0);var output=(x5=answer)?x1:x2;document.write(output);程序效果演示4.2 JavaScript语法基础语法基础4.2.4 基本语句1条件语句(1)if语句格式:if(表达式)语句块;(2)if-else语句 if(表达式)语句块
16、1;else 语句块2;例如:根据当前时间判断是白天还是夜晚例如:根据当前时间判断是白天还是夜晚 var mess1=;document.write();day=new Date();hr=day.getHours();if(hr=6)&(hr18)mess1=现在是白天现在是白天,该工作了。该工作了。;else mess1=现在是黑夜,该休息了!现在是黑夜,该休息了!;document.write(mess1);document.write();程序效果演示4.2 JavaScript语法基础语法基础(3)switch语句switch(表达式)case 值1:语句1;break;case 值
17、2:语句2;break;case 值n:语句n;break;default:语句;var mess1=“”;day=new Date();hr=day.getHours();switch(hr=0)&(hr=5)&(hr=7)&(hr=12)&(hr=15)&(hr=17)&(hr=18)&(hr19)?7:8)case 1:mess1=“深夜了,注意身体,该休息了!深夜了,注意身体,该休息了!”;break;case 2:mess1=“清晨好,这么早就上网了呀?清晨好,这么早就上网了呀?”;break;case 3:mess1=“早上好,又是美好的一天!早上好,又是美好的一天!”;break
18、;case 4:mess1=“该吃午饭啦!该吃午饭啦!”;break;case 5:mess1=“又要开始工作了!又要开始工作了!”;break;case 6:mess1=“准备吃晚饭了!准备吃晚饭了!”;break;case 7:mess1=“早上好,又是美好的一天!早上好,又是美好的一天!”;break;default:mess1=“一天过的真快!今天过的好吗?一天过的真快!今天过的好吗?”;document.write(mess1);程序效果演示程序效果演示4.2 JavaScript语法基础语法基础2循环语句(1)for语句for(初始表达式;循环条件表达式;计数器表达式)语句块;例如
19、:var name=prompt(“请写出你的姓名:”,“lp”);document.write(“这是”+name+”喜欢的3种活动”);for(var i=1;i=3;i+)document.write(“”);document.write(i+”.”+prompt(活动+i,活动类型);效果演示4.2 JavaScript语法基础语法基础(2)while语句while(循环条件表达式)语句块;计数器表达式;(3)do-while语句 do 语句块;计数器表达式;while(循环条件表达式)for(var i=1;i=3;i+)document.write(“”);document.wri
20、te(i+”.”+prompt(活动+i,活动类型);改写成while或者dowhile 循环?(4)break 和 continue 语句 breaknbreak 命令可以终止循环的运行,然后继续执行循环之后的代码(如果循环之后有代码的话)。n实例:实例:var i=0 for(i=0;i=10;i+)if(i=3)break;document.write(The number is +i)document.write()结果:结果:The number is 0The number is 1 The number is 2 Continuencontinue 命令会终止当前的循环,然后从下
21、一个值继续运行。n实例:var i=0 for(i=0;i=10;i+)if(i=3)continue;document.write(The number is +i);document.write();结果:结果:The number is 0 The number is 1 The number is 2 The number is 4 The number is 5 The number is 6The number is 7 The number is 8 The number is 9 The number is 10 4.2 JavaScript语法基础语法基础3其他语句 (了解)
22、(1)for-in语句 for(变量 in 对象)代码块;(2)with语句 with(对象)代码块;(3)return语句(4)注释 /单行注释,/*多行注释*/with语句通常用来缩短特定情形下必须写的代码量。在下面的例子中,请注意Math的重复使用:x=Math.cos(3*Math.PI)+Math.sin(Math.LN10)y=Math.tan(14*Math.E)当使用with语句时,代码变得更短且更易读:with(Math)x=cos(3*PI)+sin(LN10)y=tan(14*E)对应于一个对象的每个对应于一个对象的每个属性属性,或一个数组的每个元素,执行一个或多个语句或
23、一个数组的每个元素,执行一个或多个语句。for(variable in object|array)statements 参数参数variable:必选项。一个变量,它可以是必选项。一个变量,它可以是 object 的任一属性或的任一属性或 array 的任一元素的任一元素。object,array:可选项。要在其上遍历的对象或数组可选项。要在其上遍历的对象或数组。function ForInDemo()/创建某些变量创建某些变量。var a,key,s=;/初始化对象初始化对象。a=“a”:“Athens”,“b”:“Belgrade”,“c”:“Cairo”/可以通过可以通过a.a,a.b,
24、a.c的方式的方式 /迭代属性迭代属性。for(key in a)s+=akey+ /s+=key+“ ”;/得到的得到的s将是将是”a b c”return(s);完整程序的效果演示完整程序的效果演示4.2 JavaScript语法基础语法基础4.2.4 函数JavaScript不区分函数和过程,它只有函数。1函数的定义 function 函数名(参数1,参数2.)代码块;2函数的参数:在函数定义时确定参数,然后按照确定的参数进行传递调用。3函数返回值:可以使用return语句返回常量、变量,也可以是表达式等。4.函数包括静态函数和动态函数4.2.5 4.2.5 其他说明
25、其他说明n空格空格nJavaScript 会忽略多余的空格。所以您可以在代码中添加适当的空格,使得代码的可读性更强。n下面的两行是等效的:name=Hege“name =Hege n换行换行n您可以在文本字符串内部使用反斜杠对代码进行折行。n下面的例子是正确的:document.write(Hello World!)但是不能像这样折行:document.write (Hello World!)n插入特殊字符插入特殊字符n反斜杠用来在文本字符串中插入引号、斜杠和其他特殊字符。比较常见的如下:特殊字符输出单引号”双引号反斜杠bn例如:var txt=“We are the so-called”Vi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网页编程技术_第4章 JavaScript 网页 编程 技术
限制150内