目录
1.完整的 JavaScript 实现包含以下几个部分:
核心(ECMAScript)
文档对象模型(DOM)
浏览器对象模型(BOM)
2.DOM
文档对象模型(DOM,Document Object Model)是一个应用编程接口(API),用于在 HTML 中使用扩展的 XML。DOM 将整个页面抽象为一组分层节点。
3.BOM
IE3 和 Netscape Navigator 3 提供了浏览器对象模型(BOM) API,用于支持访问和操作浏览器的窗口。使用 BOM,开发者可以操控浏览器显示页面之外的部分。
BOM 主要针对浏览器窗口和子窗口(frame),不过人们通常会把任何特定于浏览器的
扩展都归在 BOM的范畴内。比如,下面就是这样一些扩展:
弹出新浏览器窗口的能力;
移动、缩放和关闭浏览器窗口的能力;
navigator 对象,提供关于浏览器的详尽信息;
location 对象,提供浏览器加载页面的详尽信息;
screen 对象,提供关于用户屏幕分辨率的详尽信息;
performance 对象,提供浏览器内存占用、导航行为和时间统计的详尽信息;
对 cookie 的支持;
其他自定义对象,如 XMLHttpRequest 和 IE 的 ActiveXObject 。
4.ECMAScript
ECMAScript,即 ECMA-262 定义的语言,并不局限于 Web 浏览器。事实上,这门语言没有输入和输出之类的方法。ECMA-262 将这门语言作为一个基准来定义,以便在它之上再构建更稳健的脚本语言。
Web 浏览器只是 ECMAScript 实现可能存在的一种宿主环境(host environment)。宿主环境提供
ECMAScript 的基准实现和与环境自身交互必需的扩展。扩展(比如 DOM)使用 ECMAScript 核心类型和语法,提供特定于环境的额外功能。其他宿主环境还有服务器端 JavaScript 平台 Node.js和即将被淘汰的 Adobe Flash。