JavsScript中的BOM与DOM对象

javascript 有三部分构成,ECMAScript,DOM和BOM,根据宿主(浏览器)的不同,具体的表现形式也不尽相同,ie和其他的浏览器风格迥异。
JavaScript=语法+BOM(含DOM) [关系之理解] BOM>DOM

1 DOM 是 W3C 的标准; [所有浏览器公共尊守的标准]
2 BOM 是 各个浏览器厂商根据 DOM 在各自浏览器上的实现; [表现为不同浏览器定义有差别,实现方式不同]
3 window 是 BOM 对象,而非 js 对象;

完整的JavaScript是由ECMAScript(语法)、Browser Objects=BOM(包含DOM)(特性)组成的。
JavaScript=语法+BOM(含DOM) [关系之理解]
同理:
VBScript=语法+BOM(含DOM)

 

ECMAScript与BOM和DOM的关系

上图是JavaScript的组成图示,箭头代表调用关系。

什么是ECMAScript:

ECMA是European Computer Manufacturers Association的缩写,即欧洲计算机制造商协会。欧洲计算机制造商协会是制定信息传输与通讯的国际化标准组织。官方网站为, http://www.ecmascript.org/
ECMAScript是ECMA制定的标准化脚本语言。
目前JavaScript使用的ECMAScript版本为ECMAScript-262。
ECMAScript被国际化标准组织采纳为ISO/IEC 16262。

什么是DOM:

文件对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展置标语言的标准编程接口。

Document Object Model 的历史可以追溯至1990年代后期微软与Netscape的“浏览器大战”(browser wars),双方为了在JavaScript 与 JScript一决生死,于是大规模的赋予浏览器强大的功能。微软在网页技术上加入了不少专属事物,计有VBScript、ActiveX、以及微软自家的DHTML格式等,使不少网页使用非微软平台及浏览器无法正常显示。DOM即是当时蕴酿出来的杰作。

DOM是Document Object Model的简写,既文档对象模型。
DOM由一系列对象组成,是访问、检索、修改XHTML文档内容与结构的标准方法。
DOM是跨平台与跨语言的。[一个公共文档定义标准]
DOM用于XHTML、XML文档的应用程序接口(API)。
DOM提供一种结构化的文档描述方式,从而使HTML内容使用结构化的方式显示。
DOM标准是由w3c制定与维护的 http://www.w3.org/DOM/。
DOM的顶层是document对象(DOM对象模型见下图)。

什么是BOM

BOM是browser object model的缩写,简称浏览器对象模型
BOM提供了独立于内容而与浏览器窗口进行交互的对象
由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是window
BOM由一系列相关的对象构成,并且每个对象都提供了很多方法与属性
BOM缺乏标准,JavaScript语法的标准化组织是ECMA,DOM的标准化组织是W3C
BOM最初是Netscape浏览器标准的一部分
http://www.dreamdu.com/javascript/what_is_bom/
BOM是Browser Object Model的简写,既浏览器对象模型。
BOM由一系列对象组成,是访问、控制、修改客户端(浏览器)的属性的方法。
BOM没有统一的标准(每种客户端都可以自定标准)。
BOM的顶层是window对象(BOM对象模型见上图)。

什么是Browser_Objects

JavaScript包含许多浏览器对象(Browser Objects),这些对象可以与浏览器窗体网页产生互动。Browser Objects也可被称作BOM,它包含一个名叫DOM的节点,每种对象模型都由一种层次结构组成,这种层次结构就像金字塔,DOM的顶层是document对象,BOM的顶层是window对象。

BOM and DOM

上图是Browser Objects的图示,包括BOM与DOM两部分,箭头代表继承关系。从上图可以大致了解JavaScript的所有特性。

BOM

document是一个既属于BOM又属于DOM的对象,而location对象,则是一个既属于window,又属于document的属性

原文地址: 理清javascript的相关概念 DOM和BOM

XeonWell Studio