实现JavaScript的三个部分

JavaScript实现

一个完整的JavaScript实现应该由三个不同的部分组成

实现JavaScript的三个部分

 

  • 核心(ECMAScript)

    • 由 ECMA-262 定义的 ECMAScript 与 Web 浏览器没有依赖关系
    • 常见的 Web 浏览器只是 ECMAScript 实现可能的宿主环境之一
    • ECMAScript 语言扩展(如DOM)则利用 ECMAScript 的核心类型和语法提供更多更具体的功能,以便实现针对环境的操作
    • 其他宿主环境包括 Node.js 和 Adobe Flash
    • JavaScript 实现了 ECMAScript,Adobe ActionScript 同样也实现了 ECMAScript
    • JavaScript 的核心 ECMAScript 描述了该语言的语法和基本对象

 

  • 文档对象模型(DOM)

    • 文档对象模型(DOM)是针对 XML 但经过扩展用于 HTML 的应用程序编程接口

    • DOM 提供操作和访问网页内容的方法和接口

    • DOM Level 1

      • DOM 核心

        • 规定的是如何映射基于 XML 的文档结构,以便简化对文档中任意部分的访问和操作
      • DOM HTML

        • 在 DOM 核心的基础上加以扩展,添加了针对 HTML 的对象和方法
    • DOM Level 2

      • DOM 视图

        • 定义了跟踪不同文档视图的接口
        • 即 CSS 样式化之前和 CSS 样式化之后的文档
      • DOM 事件

        • 定义了事件和事件处理的接口
      • DOM 样式

        • 定义了基于CSS为元素应用样式的接口
      • DOM 遍历和范围

        • 定义了遍历和操作文档树的接口
    • DOM Level 3

      • DOM 加载和保存模块

        • 以统一方式加载和保存文档的方法
      • DOM 验证模块

        • 验证文档的方法
      • 开始支持 XML1.0 规范,涉及 XML Infoset、XPath 和 XML Base

  • 浏览器对象模型(BOM)

    • BOM 提供与浏览器交互的方法和接口

    • 人们习惯把所有针对浏览器的 JavaScript 扩展算作 BOM 的一部分

      • 弹出新浏览器窗口的功能
      • 移动、缩放和关闭浏览器窗口的功能
      • 提供浏览器详细信息的 navigator 对象(定位对象)
      • 提供浏览器所加载页面的详细信息的 location 对象
      • 提供用户显示器分辨率详细信息的 screen 对象
      • 对 cookie 的支持
      • 像 XMLHttpRequest 和 IE 的 ActiveXObject 这样的自定义对象,可以通过 JavaScript 实例化 ActiveX 对象
上一篇:【JavaScript基础#1】


下一篇:ECMAScript和JavaScript及TypeScript