JavaScript是一种基于对象和事件驱动的客户端脚本语言,最初的设计是为了检验HTML表单输入的正确性。起源于LiveScript语言,最后Netscape与Sun将LiveScript命名为JavaScript,
最终JavaScript被提交到欧洲计算机制造商协会(ECMA),做为中立的ECMA开始了标准化脚本语言之路,并将其命名为ECMAScript。[ek - ma - script]ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会,英文名称是European Computer Manufacturers Association)通过ECMA-262标准化的脚本程序设计语言。这种语言在万维网上应用广泛,它往往被称为JavaScript或JScript,但实际上后两者是ECMA-262标准的实现和扩展。ECMAScript实际上是一种脚本在语法和语义上的标准。最新版本发布2015年6月17日,ECMAScript 6发布正式版本,即ECMAScript 2015.
Javascript的组成:ECMSCript(核心),BOM,DOM
(1) ECMAscript(European Computer Manufacturers Association)通过ECMA-262标准化的脚本程序设计语言。
主要组成部分为:
语法,类型,语句,关键字,保留字,操作符,对象。
ECMA-262有6个版本。
ECMAScript 1 1997年06月 首版
ECMAScript 2 1998年06月 格式修正,以使得其形式与ISO/IEC16262国际标准一致
ECMAScript 3 1999年12月 强大的正则表达式,更好的文字链处理,新的控制指令,异常处理,错误定义更加明确,数输出的格式化及其它改变
ECMAScript 4 未完成...可能更明确的类的定义,命名空间等等...
* 2004年6月欧洲计算机制造商协会发表了ECMA-357标准,它是ECMAScript的一个扩延,它也被称为E4X(ECMAScript for XML)。
ECMAScript 5 2009年12月发布
ECMAScript 2015 2015年6月17日发布。
(2) BOM(Browser Object Model)浏览器对象模型。浏览器对象模型,提供了很多对象,用于对浏览器的功能进行访问。其实就是提供了一组浏览器提供的自定义的API。
BOM的对象有:
窗口对象(window):window对象处于对象层次的最顶端,它提供了处理Navigator窗口的方法和属性
浏览器对象(navigator):提供有关浏览器的信息
Screen对象:提供用户显示屏幕详细信息
框架对象(frame):包含了框架的版面布局信息,以及每一个框架所对应的窗口对象
位置对象(location):提供了与当前打开的URL一起工作的方法和属性,是一个静态的对象
历史对象(history):提供了与历史清单有关的信息
文档对象(document):包含了与文档元素一起工作的对象,它将这些元素封装起来供编程人员使用。文档对象是浏览器对象模型的核心,对于实现Web页面信息交互起到关键作用。
对cookies 的支持,像XMLhttpRequest和IE的ActiveXObject这样的自定义对象。
BOM的核心对象是window(顶层对象)。
常用的BOM API有:window---》document,location,navigator,screen.....
但是BOM没有自己遵循的规范。但是慢慢W3C已经将BOM的主要规范纳入H5中。
(3)DOM(Document Object Model)文档对象模型。DOM 是 W3C(万维网联盟)的标准
DOM可以以一种独立于平台和语言的方式访问和修改一个文档的内容和结构,DOM将整个页面映射为一个由层次节点组成的文件。是可以访问和操作网页内容的方法和结口。据此可以根据网页元素,形成DOM树。
W3C DOM 标准被分为 3 个不同的部分:
核心 DOM - 针对任何结构化文档的标准模型
XML DOM - 针对 XML 文档的标准模型:XML DOM 是用于获取、更改、添加或删除 XML 元素的标准
HTML DOM - 针对 HTML 文档的标准模型:HTML DOM 是关于如何获取、修改、添加或删除 HTML 元素的标准。
W3C DOM可分为3级:
1级:1998年10月提出。由DOM核心与DOM HTML模块组成。1级DOM仅以映射文档结构为目标。
2级:2级DOM通过对象接口增加了对鼠标和用户界面事件(DHTML长期支持鼠标与用户界面事件)、范围、遍历(重复执行DOM文档)和层叠样式表(CSS)的支持。同时也对DOM 1的核心进行了扩展,从而可支持XML命名空间。
3级:3级DOM通过引入统一方式载入和保存文档和文档验证方法对DOM进行进一步扩展,DOM3包含一个名为“DOM载入与保存”的新模块。
学习Javascript的书籍有:
(1)javascript高级程序设计
(2)javascript语言精粹
(3)javascript启示录
(4)javascript权威指南 等等