一个人完整的JavaScript实现应该由下列三个不同的部分组成。
1.核心(ECMAScript);
由ECMA-262定义,提供核心语言功能; ECMAScript与Web没有依赖关系。 我们常见的Web浏览器只是ECMAScript实现可能的宿主环境之一。宿主环境不仅提供基本的ECMAScript实现的,同时也会提供该语言的扩展,以便语言与环境之间对接交互。
它规定了这们语言的下了组成让部分: 语言,类型,语句,关键字,保留字,操作符,对象。 ECMAScript就是对实现标准规定的各个方面内容的语言的描述。
2.文档对象类型(DOM);
提供访问和操作浏览器页面内容的方法和接口; (Document Object Model) 是针对XML但经过扩展用于HTML的应用编程接口(API Application Programming Interface) DOM把整个页面映射为一个多层节点结构。HTML 或者XML 页面中每个组成部分都是某种类型的节点。 这些节点节点又包含着不同类型的数据。
通过DOM创建的这个表示文档的树形图,开发人员获得了控制页面内容和结构的主权。借助DOM提供的API,开发人员可以轻松的删除,添加。替换,或者修改任何节点。
3.浏览器对象模型(BOM);
提供与浏览器交互的方法和接口; (Browser Object Model) 开发人员使用BOM可以控制浏览器显示的页面以外的部分。BOM只处理浏览器窗口和框架。但人们先习惯性上也把所有针对浏览器的JavaScript扩展算作BOM的一部分。 下面就是这样的扩展:
- 弹出新的浏览器窗口的功能。
- 移动 缩放 关闭浏览器窗口的功能。
- 提供浏览器详细信息的navigator对象。
- 提供浏览器所加载页面的详情信息的location 对象。
- 提供用户显示器分辨率详细信息的screen 对象。
- 对cookies的支持。
- 像XMLHttpRequest 和IE 的ActiveXObject 这样自定义对象。