DOM就是针对HTML和XML提供的一个API。就是为了操做html中的元素。是为操做文档出现的接口html
咱们把html看作一个对象树(DOM树),以下结构node
DOM的做用:就是为了操做html中的元素浏览器
document:便是html,document只是DOM树中的一个节点(node)。spa
在一个浏览器中可能有多个document,例如,经过iframe加载的页面,每个都是一个document。htm
控制浏览器的行为的接口对象
浏览器操做:跳转,前进,后退,获取屏幕大小,分辨率...接口
例如跳转到另一个页面文档
location.href="http://www.baidu.com";iframe
DOM是为了操做文档出现的API,document就是其中的一个对象io
BOM是为了操做浏览器出现的API,window就是其中的一个对象
为了通俗易懂,附上下图
归属DOM区域的
E区:就是document
归属BOM区域的
A区:浏览器的标签页,地址栏,搜索栏,书签栏,窗口放大还原关闭按钮,菜单栏等等
B区:浏览器的右键菜单
C区:document加载时的状态栏,显示http状态码等
D区:滚动条
原文:https://www.zhihu.com/question/33453164