题注:此篇为博主的学习感悟,可能有理解不妥之处,还望观者不吝赐教,有其他见解也希望能留言交流(づ ̄ 3 ̄)づ
DOM 全称是 Document Object Model,也就是文档对象模型。
个人理解,DOM包含三层意思:1.DOM是一个操作HTML的API接口2.DOM是一个HTML结构模型3.DOM代指该HTML模型中的对象
1.DOM是一个操作HTML的API接口
HTML本身是静态的,是不变的,每个标签的内容以及属性都是死的。
如果要让网页动起来,就要完成两步:第一步是思维上的转变(网页是可以动起来的),第二部是操作上的突破(如何动起来)
DOM完成了上述两步,它首先在板结的HTML上找到突破口,定义了一些可以改变的东西,之后又针对这些突破口设计了一系列API,让人们能通过这些API来操作这些元素。
2.DOM是一个HTML结构模型
在DOM出现之前,我想HTML文件对于很多人只不过是一段遵循特殊规则的文本,而DOM却给它建立了一个结构模型,使它立体了起来。
也就是下面这个图了:
文章图片
3.DOM代指该HTML模型中的对象
【如何理解前端中的DOM、BOM】一句话概括,DOM就是上图中的那些节点。
那么,BOM又是什么?
BOM 是 Browser Object Model,浏览器对象模型。
简单地说,BOM和DOM一样,只不过DOM操作的是HTML中的元素,BOM是浏览器的API、操作的是浏览器(即控制浏览器的行为)
参考:
1.https://www.zhihu.com/question/34219998 Fadeoc Khaos的回答
2.https://www.zhihu.com/question/33453164/answer/56549408 匿名用户的回答
推荐阅读
- web网页模板|如此优秀的JS轮播图,写完老师都沉默了
- 接口|axios接口报错-参数类型错误解决
- JavaScript|vue 基于axios封装request接口请求——request.js文件
- JavaScript|JavaScript — 初识数组、数组字面量和方法、forEach、数组的遍历
- JavaScript|JavaScript — call()和apply()、Date对象、Math、包装类、字符串的方法
- 前端|web前端dya07--ES6高级语法的转化&render&vue与webpack&export
- vue|Vue面试常用详细总结
- javascript|vue使用js-xlsx导出excel,可修改格子样式,例如背景颜色、字体大小、列宽等
- css|我用css精灵图拼接了自己的英文名字,不会还有人不知道精灵图技术吧()
- css|css三角的做法及其案例