DOM和BOM的区别
我们都指代,javascript由三个部分组成:
- EMCAScript:描述了JS的语法和基本对象
- BOM(浏览器对象模型 brower object model):与浏览器交互的方法和对象
- DOM(文档对象模型 document object model):处理网页内容的方法和对象
1.DOM
DOM是文档对象模型,它指的是把文档当作一个对象来对待,这个对象主要定义了处理网页的内容和接口
2.BOM
- BOM是浏览器对象模型,它指的是将浏览器当作一个对象来对待,这个对象主要定义了与浏览器进行交互的方法和接口;
- BOM的核心是window,而window对象具有双重角色,它既是js访问浏览器窗口的一个接口,又是一个全局对象(Global);
- 这就意味着网页中定义的任何对象、变量和函数,都会作为全局对象的一个属性或者方法存在;
3.使用标准
- DOM是W3C的标准,所有浏览器公共遵守的标准
- BOM是各个浏览器厂商根据DOM在各自浏览器上的实现(表现为不同浏览器定义有差别,实现方式不同)
- window为BOM对象,而非js对象
4.包含属性:
- BOM: location、navigator、document
- DOM:document也是BOM的window的子对象; PS:DOM的最根本的对象是BOM的window对象的子对象
5. DOM与BOM基本操作思维导图
BOM
DOM