PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

js中的bom和dom有什么区别?bom和dom的区别总结

不言
不言 原创
2018-09-28 16:48:26 27443浏览

学习js的人都应该知道javascript是由三部分构成,ecmascript,dom和bom,根据宿主(浏览器)的不同,具体的表现形式也不尽相同。bom和dom都属于js的组成部分,那么,bom和dom之间有什么区别呢?接下来本篇文章将给大家介绍js中bom和dom之间的区别,有需要的小伙伴可以看一下,希望对你有所帮助。

首先我们来分别看一下bom和dom的概念

1、BOM是浏览器对象模型

提供了独立于内容而与浏览器窗口进行交互的对象。描述了与浏览器进行交互的方法和接口,可以对浏览器窗口进行访问和操作,譬如可以弹出新的窗口,改变状态栏中的文本,对Cookie的支持,IE还扩展了BOM,加入了ActiveXObject类,可以通过js脚本实例化ActiveX对象等等)

2、DOM是文档对象模型

DOM是针对XML的基于树的API。描述了处理网页内容的方法和接口,是HTML和XML的API,DOM把整个页面规划成由节点层级构成的文档。DOM本身是与语言无关的API,它并不与Java,JavaScript或其他语言绑定。

看完了js中bom和dom的概念后,我们应该可以很容易就能够总结出关于js中bom和dom的区别

js中bom和dom的区别之一:

1、BOM是Browser Object Model的缩写,即浏览器对象模型。

BOM和浏览器关系密切。浏览器的很多东西可以通过JavaScript控制的,例如打开新窗口、打开新选项卡(标签页)、关闭页面,把网页设为主页,或加入收藏夹,等等…这些涉及到的对象就是BOM。

2、DOM是Document Object Model的缩写,即文档对象模型。

DOM和文档有关,这里的文档指的是网页,也就是HTML文档。网页是由服务器发送给客户端浏览器的,无论用什么浏览器,接收到的HTML都是一样的,所以DOM和浏览器无关,它关注的是网页本身的内容。由于和浏览器关系不大,所以标准就好定了。

js中bom和dom的区别之二:

1、BOM没有相关标准。

由于没有标准,不同的浏览器实现同一功能,可以需要不同的实现方式。对于上面说的功能,不同的浏览器的实现功能所需要的JavaScript代码可能不相同。

2、DOM是W3C的标准。

既然有标准了,大家就要按标准来了。

js中bom和dom的区别之三:

1、BOM的最根本对象是window。

2、DOM最根本对象是document(实际上是window.document)。

最后,需要说明的是:

1、虽然BOM没有一套标准,但是各个浏览器的常用功能的JavaScript代码还是大同小异的,对于常用的功能实际上已经有默认的标准了。所以不用过于担心浏览器兼容问题,不是每个浏览器都有自己的BOM,也不需要为每个浏览器都学习一套BOM,只是个别浏览器会有新增的功能会在BOM上体现出来。

2、我们知道HTML是由标签组成的,标签套标签。JavaScript可以通过DOM获取到底有哪些标签,标签里面的属性是什么,内容是什么等。

以上就是本篇文章的全部内容了,关于js中bom和dom的详细内容大家可以参考javascript开发手册来进一步学习。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。