Javascript教案(46页).doc
《Javascript教案(46页).doc》由会员分享,可在线阅读,更多相关《Javascript教案(46页).doc(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-Javascript教案-第 45 页 教案Javascript部分共10天40学时2周第一天 Javascript简介第一节 简介 1.1 Javascript简介: Javascript的历史1992年,一家名为Nombas的公司开发一种叫C减减(C-minus-minus,简称Cmm,有点与C+对应的意味)的嵌入式脚本语言。Cmm背后的理念很简单:一个足够强大可以替代宏操作(macro)的脚本语言,同时保持C/C+足够的相似性(C语言太经典了,特别是其语法有着简洁美),以便开发人员能很快学会。这个脚本语言被捆绑在一个叫做CEnvi的共享软件产品中,它首次向开发人员展示了这种语言的威力。
2、Nombas最终把Cmm的名字改成了ScriptEase,原因是后面的部分(mm)听起来过于“消极”,同时字母“C”令人害怕。现在ScriptEase已经成为了Nombas产品背后主要驱动力(怎么我觉得这家公司已经不存在了呢?)。当Netscape Navigator(盛极一时的网景的浏览器,结果被微软IE的免费策略搅黄了局)暂露头角时,Nombas开发了一个可以嵌入网页中的CEnvi的版本。这些早期的实验称为Espresso Page,它们代表了第一个在万维网上使用的客户端脚本语言。而Nombas丝毫没有料到它的理念将会成为internet的一块重要基石。 当internet普及越来越广时,
3、对于开发客户端脚本的需求也逐渐增大。此时,大部分internet用户仅仅通过28.8kbit/s的Modem来连接到网络,即使这时网页已经不断地变得更大和更复杂。加剧用户痛苦的是,仅仅为了简单的表单有效性验证,就要与服务器进行多次的往返交互。设想一下,用户填写完一个表单,点击提交按钮,等待30秒后,看到的却是一条告诉你忘记填写一个必要的字段的信息。那时正处于技术革新最前沿的Netscape,开始认真考虑一种开发客户端语言来处理简单的问题。当时为Netscape工作的Brendan Erich,开始着手为即将在1995年发行的Netscape Navigator 2.0开发一个称之为LiveSc
4、ript的脚本语言,当时的目的是同时在浏览器和服务器使用它。Netscape与Sun公司联手及时完成了LiveScript的实现。就在Netscape Navigator 2.0即将正式发布前,Netscape将其更名为Javascript(想当年,也就是95年,正式Java普遍开始流行的一年,Java开始火起来,似乎打上一个Java的标签,也会火起来一样),目的是为了利用Java这个internet时髦词汇。Netscape的这一决定也实现了当初的意图,Javascript从此变成了因特网的必备组件。因为Javascript 1.0如此成功,Netscape在Navigator 3.0中发布
5、了Javascript 1.1版本。恰巧那个时候,微软决定进军浏览器市场,发布了IE 3.0b并搭载了一个Javascript的克隆版,叫做Jscript(微软一直是一名成功的模仿者,这样命名是为了避免与Netscape潜在的许可纠纷)。微软步入浏览器领域的这重要一步当然推动了javascript的进行一步发展。在微软进入后,有3种不同的Javascript版本同时存在:Netsacpe Navigator 3.0中的Javascript、IE中的JScript以及CEnvi中的ScriptEase。与其他编程语言不同的是,Javascript并没有一个标准来统一其语法或特性,而这3种不同的版
6、本恰恰突出了这个问题,随着用户担心的增加,这个语言标准化显然已经势在必行。1997年,Javascript 1.1作为一个草案提交给ECMA(欧洲计算机制造商协会)。第39技术委员会(TC39)被委派来“标准化一个通用、跨平台、中立于厂商的脚本语言的语法和语义”。由来自Netscape、Sun、微软、Borland和其他一些对脚本编程感兴趣的公司的程序员组成的TC39锤炼出了ECMA-262,该标准定义了叫做ECMAScript的全新脚本语言。在接下来的几年里,ISO/IEC(国际化标准组织及国际电工委员会)也采纳ECMAScript作为标准(ISO/IEC-16262)。从此,Web浏览器就
7、开始努力(虽然有着不同成都的成功和失败)将ECMAScript作为Javascript实现的基础。 Javascript的优点1.简单性Javascript是一种脚本编写语言,她采用小程序段的方式实现编程,像其他脚本语言一样,Javascript同样也是一种解释性语言,他提供了一个简易的开发过程,他的基本结构形式与C、C+十分类似,但他不像这些语言一样,需要先编译,而是在程序运行过程中被逐行的解释,他与HTML标记结合在一起,从而方便用户的使用操作。2.动态性Javascript是动态的,他可以直接对用户或客户输入作出响应,无须经过web服务程序,他对用户的反映响应,是采用以事件驱动的方式进行
8、的,所谓事件驱动,就是指在页面中执行了某种操作所产生的动作,称为“事件”。比如按下鼠标、移动窗口、选择菜单等都可以视为事件,当事件发生后,可能会引起相应的事件响应。3.跨平台性Javascript是依赖于浏览器本身,与操作环境无关,只要能运行浏览器的计算机,并支持javascript的浏览器就可以正确执行。4.节省CGI的交互时间假如提交一个简单的表单,就需要与服务器进行多次的交互,点击提交,等待30秒后被告之没有填写住址等等类似的事情发生让人感觉非常不舒服,客户端脚本就显得越来越重要,Javascript可以在数据被提交给服务器之前,预处理客户端的数据。 Javascript的局限性浏览器有
9、很多种,每种对javascript的支持程度是不一样的,效果会有一定的差距。1.2 主要应用 控制文档的内容和表现document.write(“hello,web”); 控制浏览器的行为window.status=“欢迎访问javascript”; 和文档的内容相互作用 和用户交互猜数字游戏var sum=0;num=Math.floor()第二节 简介2.1 javascript不能做的(限制多,安全性高) 设置或检索浏览器参数设置、主窗口外观特性、动作按钮和打印 在客户机上启动一个应用程序 在客户端或服务器上读/写文件或文件夹 重新传输从服务器上捕获的现场数据流 从web站点访问者处向用
10、户发送机密的电子邮件2.2 javascript并非Java 不同的公司:sun、Netscape(网景); 不同类型:面向对象编译型、基于对象解释型; 独立性:单独执行、嵌入到HTML,不能单独运行;2.3 javascript在客户端应用的三部分构成 作为核心的ECMAScript:语言基础,定义了基本的语法和语义; javascript的核心,描述该语言的语法和基本对象 ECMA标准 Jscript是ECMAScript的一种实现,功能较多 ActionScript flash AIR Flex Netscape LiveWire是javascript在服务器端的实现 JavaScrip
11、t HTML XML Ajax 文档对象模型DOM:操作HTML/XML的API描述处理网页内容的方法和接口 W3C标准; 浏览器对象模型BOM:操作浏览器功能的API,描述与浏览器进行交互的方法和接口; 开发环境1)选择一个自己喜欢的编辑器l Notepad+l VIMl Editplusl Geditl Emacsl 其它2)符合W3C标准的浏览器l Firfoxl IEl Google chromel Operal Safari 3)调试工具l Firefox下的firebug、venkman等, FF-“辅助选项”-“firebug”-安装或者下载到firebug插件拖入浏览器即可l
12、IE下的ie developertoolbar, IE-“工具”-“开发人员工具”2.4 javascript的引用在内部 标记包含式 第三种function showAlert() alert(“web“); Js外部引用式第三种。web程序设计common.js文件内容function showAlert()alert(“web程序设计“); 事件跟随式第三种第三节 语言基础3.1注意事项 语句分隔符 ; 注释标记 / 单行注释/*.*/ 多行注释3.2数据类型三种主要数据类型,两种复合数据类型和两种特殊数据类型 主要(基本)数据类型l 字符串l 数值l 布尔 复合(引用)数据类型l 对象
13、l 数组 特殊数据类型l nulll undefined注意事项:n String字符串类型:字符串是用单引号或双引号来说明的;n 数值数据类型:Javascript支持整数和浮点数。整数可以为正数、0或者负数;浮点数可以包含小数点、也可以包含一个“e”(大小写均可,表示“10的幂”);n Boolean类型:true和false,不能用1和0;n Undefined数据类型:变量创建后未赋值;n Null数据类型:没有任何值,什么也不表示;3.3判断数据类型typeof 运算符说明:返回一个用来表示表达式数据类型的字符串 有六种可能:number、string、boolean、object、
14、function、undefined var a=18; var b=”今年18”; var c=true; document.write(typeof(a);document.write(typeof(b);document.write(typeof(c);document.write(typeof(d);document.write(typeof(window); /objectdocument.write(typeof(test);function test(xb) If(xb=1)return “男”;elsereturn “女”; 请注意:null与0不相等,typeof运算符将报告
15、null为object,而非类型null,这点潜在的混淆是为了向下兼容。3.4数据类型转换Object.toString() 对象的字符串表示parseInt(numString) 字符串转换得到整数parseFloat(numString)字符串转换得到浮点【强制转换】数值与字符串相加 数值转换成字符串布尔值与字符串相加 布尔值转换成字符串数值与布尔值相加 布尔值转换成数值3.5转义字符n n 换行(new line)n r 游标回首行(carriage return)n t 水平定位(horizontal tab)n 单引号 (single quote)n ” 双引号 (double qu
16、ote)n 反斜线 (back slash)n b 倒退 (backspace)n f 换页(form feed)第四节 语言基础4.1 变量和常量n 常量值可以为整型、逻辑型、实型以及字符串型等n 变量用关键字var声明或用赋值的形式n 变量命名规则1、 第一个字符必须是字母(大小写均可)、下划线(_)或美元符($);2、 后续字符可以是字母、数字、下划线或美元符;3、 变量名称不能是保留字;4、 字符大小写敏感;n 变量可以不声明直接使用n 变量弱类型检查,且可随时改变数据类型演示:骆驼命名法、匈牙利命名法对于变量的理解;变量是数据的代号,如同人的名字一样:var num;/在javasc
17、ript中使用关键字var声明一个变量在javascript中,使用上面的语法就能声明一个变量,以便在之后给其指定值var num;num=128;/将num作为值128的一个名字,就可以引用document.write(num);/输出128var a=“hello”;document.write(128);/这样也输出128var b=“world”;/不需要声明类型var n=123;var f=.123;var Mame;Mame=123;/同时进行var a,b,c;var a=b=c=123;var b=true;b=false;/undefined情况:值未定义var a;/没有
18、赋值alert(a);/有值,undefined/未声明的变量alert(n);/将会出错,不是undefined/错误情况var abc-abc;var 123bad;var var;var 21bad;保留字Break、delete、function、return、typeof、case、do、if、switch、var、catch、else、in、this、void、continue、false、instanceof、throw、while、debugger、finnally、new、true、with、default、for、null、try将来的保留字Abstract、double、
19、goto、native、static、boolean、enum等数字(只能有整数或小数),字符串可能是最常用的了,还有另外一种类型:布尔(Boolean)true(非零)、falsevar bool=true;/用true表示真值bool=false;/用false表示假值Javascript是动态类型语言,声明时可以不指明类型,运行时刻变量的值可以有不同类型var s=“hello world”;/声明无需指明字符串类型s=1.603;/运行时刻指定另一个类型 复合(引用)数据类型:对象、数组 特殊数据类型:undefined4.2 运算符和表达式n 运算符n 赋值运算符:=、+=、-=、*
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Javascript 教案 46
限制150内