ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
## JavaScript实现 * * * * * 1.JavaScript是专为网页交互而设计的脚本语言,一个完整的JavaScript实现应该由下列三个不同的部分组成(JavaScript与ECMAScript之间的关系): * **核心(ECMAScript)**,由ECMA-262定义,提供核心语言功能。 * **文档对象模型(DOM)**,提供访问和操作网页内容的方法和接口。 * **浏览器对象模型(BOM)**,提供与浏览器交互的方法和接口。 #### ECMAScript * * * * * 2.ECMA-262是一份定义了一种名为ECMAScript的新脚本语言的**标准**。ECMA-262规定的内容包括:**语法、类型、语句、关键字、保留字、操作符、对象**。 3.ECMAScript与Web浏览器没有依赖关系。实际上,这门语言本身并不包含输入和输出定义。ECMA-262定义的只是这门语言的基础,而在此基础上可以构建更完善的脚本语言。我们常见的Web浏览器只是ECMAScript实现可能的宿主环境之一。其他宿主环境包括Node和Adobe Flash。 #### 文档对象模型(DOM) * * * * * 4.**DOM1级**由两个模块组成:**DOM Core**和**DOM HTML**。 其中DOM Core规定的是如何映射基于XML的文档结构,以便简化对文档中任意部分的访问和操作。DOM HTML模块则在DOM核心的基础上加以扩展,添加了针对HTML的对象和方法。 5.**DOM2级**引入了下列新模块,也给出了众多新类型的接口和定义。 * **DOM Views**:定义了跟踪不同文档(例如,应用CSS之前和之后的文档)视图的接口。 * **DOM Events**:定义了事件和事件处理的接口。 * **DOM Style**:定义了基于CSS为元素应用样式的接口。 * **DOM Traversal and Range**(遍历和范围):定义了遍历和操作文档树的方法. 6.**DOM3级**则进一步扩展了DOM,引入了以统一方式加载和保存文档的方法--在**DOM Load and Save**(加载和保存模块)中定义;新增了验证文档的方法--在**DOM Validation**(验证模块)中定义。 7.DOM 0级标准实际上是不存在的,所谓DOM 0级只是DOM历史坐标中的一个参照点而已。具体说来,DOM 0级指的是IE 4.0和Netscape Navigator 4.0最初支持的DHTML。 #### 浏览器对象模型(BOM) * * * * * 8.从根本上讲,BOM只处理浏览器窗口和框架,但人们习惯上也把所有针对浏览器的JS扩展算作BOM的一部分,它们包括: - 弹出新浏览器窗口的功能 - 移动、缩放和关闭浏览器窗口的功能 - 提供浏览器详细信息的navigator对象 - 提供浏览器所加载页面的详细信息的location对象 - 提供用户显示器分辨率详细信息的screen对象 - 对cookies的支持 - 像XMLHttpRequest和IE的ActiveXObject这样的自定义对象。 9.对于已经纳入**HTML5**标准的**BOM**来说,尽管各浏览器都实现了某些众所周知的共同特性,但其他特性还是会因浏览器而异。