小女子认为,当我们学习一门语言的时候一定要了解这门语言是为了解决什么样的问题而出现的,并了解其发展史,这样有利于我们宏观性更好地把握好这门语言……
下面这段话很好的提供了,我们想要的答案:
JavaScript 语言概述
JavaScript 是目前Web 应用程序开发者使用最为广泛的客户端脚本编程语言,它不仅可用来开发交互式的Web 页面,更重要的是它将HTML、XML 和Java applet、flash 等功能强大的Web 对象有机结合起来,使开发人员能快捷生成Internet 或Intranet 上使用的分布式应用程序。另外由于Windows 对其最为完善的支持并提供二次开发的接口来访问操作系统各组件并实施相应的管理功能,JavaScript 成为继.bat(批处理文件)以来Windows 系统里使用最为广泛的脚本语言。
JavaScript 是什么
应用程序开发者在学习一门新语言之前,兴趣肯定聚焦在诸如“它是什么”、“它能做什么”等问题而不是“如何开发”等问题上面。同样,学习JavaScript 脚本,首先来揭开JavaScript脚本的面纱:“JavaScript 是什么?”
JavaScript 简史
二十世纪90 年代中期,大部分因特网用户使用28.8kbit/s 的Modem 连接到网络进行网上冲浪,为解决网页功能简单的问题,HTML 文档已经变得越来越复杂和庞大,更让用户痛苦的是,为验证一个表单的有效性,客户端必须与服务器端进行多次的数据交互。难以想象这样的情景:当用户填完表单单击鼠标提交后,经过漫长的几十秒等待,服务器端返回的不是“提交成功”的喜悦却是“某某字段必须为阿拉伯数字,请单击按钮返回上一页面重新填写表单!”的错误提示!当时业界已经开始考虑开发一种客户端脚本语言来处理诸如验证表单合法性等简单而实用的问题。
1995 年Netscape 公司和Sun 公司联合开发出JavaScript 脚本语言,并在其Netscape Navigator 2 中实现了JavaScript 脚本规范的第一个版本即JavaScript 1.0 版,不久就显示了其强大的生机和发展潜力。由于当时Netscape Navigator 主宰着Web 浏览器市场,而Microsoft的IE 则扮演追赶者的角色,为了跟上Netscape 步伐,Microsoft 在其Internet Explorer 3 中以JScript 为名发布了一个JavaScript 的克隆版本JScript 1.0。
1997 年,为了避免无序竞争,同时解决JavaScript 几个版本语法、特性等方面的混乱,JavaScript 1.1 作为草案提交给ECMA(欧洲计算机厂商协会),并由Netscape、Sun、Microsoft、Borland 及其它一些对脚本语言比较感兴趣的公司组成的TC39(第39 技术委员会:以下简称TC39)协商并推出了ECMA-262 规范版本,其定义了以JavaScript 为蓝本、全新的ECMAScript 脚本语言。
ECMA-262 标准Edition 1 删除了JavaScript 1.1 中与浏览器相关的部分,同时要求对象是平台无关的并且支持Unicode 标准。
在接下来的几年,ISO/IEC(估计标准化组织/国际电工委员会)采纳ECMAScript 作为Web 脚本语言标准(ISO/IEC-16262)。从此,ECMAScript 作为JavaScript 脚本的基础开始得到越来越多的浏览器厂商在不同程度上支持。为了与ISO/IEC-16262 标准严格一致,ECMA-262 标准发布Edition2,此版本并没有添加、更改和删除内容。ECMA-262 标准Edition 3 提供了对字符串处理、错误定义和数值输出等方面的更新,同时增加了对try…catch异常处理、正则表达式、新的控制语句等方面的完美支持,它标志着ECMAScript成为一门真正的编程语言,以ECMAScript为核心的JavaScript脚本语言得到了迅猛的发展。ECMA-262 标准Edition 4 正在制定过程中,可能明确的类的定义方法和命名空间等概念。表1.1 是ECMA-262 标准四个版本之间的异同及浏览器支持情况。
表 1.1 ECMA-262 标准各版本间异同及浏览器支持情况
1999 年6 月ECMA 发布ECMA-290 标准,其主要添加用ECMAScript 来开发可复用组件的内容。
2005 年12 月ECMA 发布ECMA-357 标准(ISO/IEC 22537)出台,主要增加对扩展标记语言XML 的有效支持。
注意:JavaScript 脚本也能进行服务器端应用程序的开发,但相对于客户端的功能和应用范围而言,一般仍将其作为一门客户端脚本语言对待,后面有专门章节讲述服务器端JavaScript 脚本。
对 JavaScript 历史的了解有助于开发者迅速掌握这门语言,同时也能加深对JavaScript语言潜力的理解。下面介绍其语言特点。