转载:
链接:juejin.cn/post/684490…
链接:juejin.cn/post/684490…

BOM
BOM是为了控制浏览器行为而出现的接口。它里面有着很多的对象来操作浏览器的行为。 下面这张图就是知乎上某个知友贴出来的区分BOM区域和DOM区域的。

window
window是BOM中的一个对象。window是BOM的顶层对象,其他的BOM对象都是window的属性
window对象的属性,主要用于获取浏览器信息和对浏览器的操作。
-
window对象在客户端充当JavaScript中的全局对象,代表浏览器目前打开的窗口。
-
window对象下存在一个window属性,指向自身。
-
若HTML文档中包含框架(如frame和iframe),则浏览器会在为整个文档创建一个window对象的基础上,为每个框架都新创建一个window对象。
-
由于window对象是全局对象,故其下定义的属性和方法可以访问,不必在前面加window。如要访问document对象,直接写document即可,不必写为window.document。
-
window对象并没有统一的标准,不过所有的浏览器都支持了这个对象。
-
和其他运行环境的JavaScript全局对象相比,window对象定义了JavaScript中所有的预定义全局值,并针对web浏览器和客户端JavaScript定义了一些其他全局属性。
DOM
为了能够通过编程的方法操作HTML的内容(添些元素、修改元素、删除元素),即对各种DOM进行操作。
Document
Document就是整个DOM树的根节点。可以通过document访问到dom树的所有节点。
- 每个载入浏览器的HTML文件都是一个document对象。
- window对象包含了document对象,可以通过window.document来访问。
- document对象定义了许多和HTML节点相关的属性和方法,让我们可以通过脚本来对这些节点进行访问和修改。

下面是总结的document的属性
复制代码
cookie
domain:返回文档当前的域名
URL:返回文档当前的URL
title:拿到文档的标题
body
head
getElementBy系列