JavaScript中的BOM与DOM

  JS是一种基于对象的语言,它通过操作对象完成各种任务。在浏览器的使用者眼中,浏览器是一个显示文档的窗口,但在编写JS程序时,开发者则认为浏览器是一组相互关联的对象,它以分层的方式组织。当浏览器分析文档时,它创建一组定义文档、说明文档显示细节的对象。浏览器创建的对象通常称作文档对象,它是浏览器使用的众多对象中的一部分。

  浏览器操作的各种对象组合起来称作浏览器对象模型(Browser Object Model),简称BOM。JS使用的浏览器对象模型有:

    <1.window对象:顶层对象,包含了有关显示文档的窗口信息。

    <2.navigator对象:包含了浏览器的信息。

    <3.Frame对象:用于引用一组窗口的对象。

    <4.location对象:存储了当前页面的URL地址。

    <5.document对象:即文档对象,存储了有关文档内容的大部分信息。

    <6.history对象:记录当前会话中用户访问了哪些Web页面。

    <7.screen对象:提供了当前计算机的显示特性。

  文档对象模型(Document Object Model),简称DOM。是能够以编程的方式访问和操作Web页面(文档)内容的接口,它提供了文档中独立元素的结构化、面向对象的表示方法,并允许通过对象的属性和方法访问这些对象。另外,文档对象模型还提供了添加和删除文档对象的方法,这样能够创建动态的文档内容。DOM也提供了处理事件的接口,它允许捕获和响应用户以及浏览器的动作。利用文档对象模型,使用JS操作页面内容的过程称作动态的HTML,即DHTML,DOM不是JS的一部分,而是独立于编程语言和操作平台的编程接口。在DOM中,无论对象是什么,每一个对象都称为一个节点,DOM描述了组成文档的各种对象。document对象便是显示在浏览器中的HTML文档。

网上的通俗解释:
  BOM用来获取或设置浏览器的属性。
  DOM用来获取或设置文档中标签的属性。
原文地址:https://www.cnblogs.com/mosquito-woo/p/3662934.html