JS的实现
一个完整的JavaScript的实现由下列三个不同的部分组成
1)核心(ECMAScript)
2)文档对象模型(DOM)
3)浏览器对象模型(BOM)
ECMAScript介绍
ECMAScript是由ecma-262定义的语言,与web浏览器并没有依赖关系。它定义的只是语法,类型,对象等语法。web浏览器只是ECMAScript的宿主环境之一。它除了可以在web浏览器之外,Adobe Flash也是宿主环境之一。我们常说的JavaScript只是实现了ECMAScript,并对它进行了扩展。Adobe ActionScript也实现了ECMAScript。
文档对象模型(DOM)
DOM是针对xml但经过扩展用于html的应用程序编写接口。
DOM把整个页面映射为一个多层节点结构。html页面中的每个组成部分都是某种类型的节点,这些节点又包含着不同类型的数据。
浏览器对象模型(BOM)
BOM是可以访问和操作浏览器窗口的浏览器对象模型。从根本上说,BOM只处理浏览器窗口和框架,但人们习惯吧所有针对浏览器的JavaScript的扩展算作Bom的一部分,例如:提供浏览器详细信息的navigator对象;提供浏览器所加载页面的详细信息的location对象。
由于BOM没有标准,所以除了一些事实的标准,比如要有windows对象,navigator对象等,各个浏览器都有自己的实现和扩展,都会定义自己的属性和方法。