JavaScript BOM对象-BOM介绍

 2016年03月28日    3030     声明


BOM浏览器对象模型(Browser Object Model)BOM对象是在Web中使用JavaScript的核心,该对象提供了与浏览器交互相关对象结构。BOM由多个子对象组成,其核心为window对象,它是BOM的顶层对象,表示在浏览器环境中的一个全局的顶级对象,所有在浏览器环境中使用的对象都是window对象的子对象。


  1. 浏览器对象模型
  2. BOM中的对象

1. 浏览器对象模型

BOM是指浏览器对象模型,它是对一系列在浏览器环境中使用对象的统称,这些对象提供了访问浏览器的功能。

BOM对象中,window对象是最顶层对象,在浏览器环境中它是一个Global全局对象,其它对象(如:DOM对象)对是这个对象的属性(子对象)。BOM对象是与内容无关,主要用于管理浏览器窗口及窗口之间的通讯。下面是BOM对象的组成结构:

BOM-浏览器对象模型


2. BOM中的对象

2.1 window对象

window对象对象表示一个浏览器窗口或一个frame框架,它处于对象层次的最顶端,它提供了处理浏览器窗口的方法和属性。

window对象是浏览器对象中的默认对象,所以可以隐式地引用window对象的属性和方法。在浏览器环境中,添加到window对象中的方法、属性等,其作用域都是全局的。JavaScript中的标准内置对象,在浏览器环境中也是做为window的方法和属性出现的。

如,以下两行代码是等价的:

new Date();
// 等价于
new window.Date();


2.2 DOMdocument)相关对象

DOM可以认为是BOM的一个子集,DOM中文档操作相关对象,如:NodeDocumentElementDOM节点类型对象,都是做为window对象的子属性出现的。

documentwindow对象的了个属性,它是一个Document对象实例,表示当前窗口中文档对象。通过该对象,可以对文档和文档中元素、节点等进行操作。


2.3 frames对象

frames对象是一个集合,表示当前页面中使用的子框架。如果页面中使用了框架,将产生一个框架集合frames,在集合中可以用数字下标(从0开始)或名字索引框架。集全中的每一个对象,包含了框架的页面布局信息,以及每一个框架所对应的window对象。


2.4 navigator对象

navigator是指浏览器对象,该对象提供了当前正在使用的浏览器的信息。navigator对象中的属性是只读的,在W3C在HTML5标准中,对该对象进行了规范。由于浏览器的同,该对象的具体值可能有所区别。


2.5 history对象

history对象来保存浏览器历史记录信息,也就是用户访问的页面。浏览器的前进与后退功能本质上就是history的操作。history对象记录了用户浏览过的页面,通过该对象提供的API可以实现与浏览器前进/后退类似的导航功能。


2.6 location对象

location是一个静态对象,该对象是对当前窗口URL地址的解析。该对象提供了可以访问URL中不同部分的信息属性,通过location对象也可以实现页面或锚点跳转等功能。

更多关于location对象的介绍请参考:JavaScript获取url参数及Location对象简介


2.7 screen对象

screen对象中包含了用户显示器屏幕相关信息。通过该对象,可以访问用户显示器屏幕宽、高、色深等信息。