DOM全拼为Document Object Model(文档对象模型)是一种用于HTML和XML文档的编程接口,它给文档提供了一种结构化的表示方法,可以改变文档的内容和呈现方式。

DOM概念本身:

  1. 普通文档(*.txt)和HTML/XML文档(*.html/*.xml)的区别仅仅是因为后者是有组织的结构化文件;
  2. 浏览器将结构化的文档以树的数据结构读入浏览器内存,并将每个树的子节点定义为一个NODE(想象这颗树,从根节点到叶子节点都被建模为一个NODE对象);
  3. 这每个节点(NODE)都有自己的属性(名称、类型、内容...);
  4. NODE之间有层级关系(parents、child、sibling...);
  5. 以上已经完成文档的建模工作(将文档内容以树形结构写入内存),此时再编写一些方法来操作节点(属性和位置信息),即为NODE API。

抽象一下:

  • DOM是一种将HTML/XML文档组织成对象模型建模过程
  • DOM建模重点在于如何解析HTML/XML文档和开放符合DOM接口规范的节点操作API接口

再抽象一下:

  • 解析文档,建模成对象模型,开放API接口。

最后:

  • DOM:Document Object Model 文档对象模型
  • DOM 是什么? - 知乎最后附上知乎上比较生动形象的讲解,看完绝对明白!

DOM是什么?(超详细解释)相关推荐

  1. 关于三次握手与四次挥手的超详细解释

    关于三次握手与四次挥手的超详细解释 看了很多博客的文章,再结合自己想要知道的知识,发现还是需要东看一下西看一下,才能明白大概的过程.所以这里博主决定来小小的结合一下自己记录的内容.来写一个容易看明白并 ...

  2. C++引用的超详细解释及误区纠正,不看后悔哦(中)

    书接上文,这次我想向大家谈一谈关于函数引用返回的问题 非引用返回,非引用接收: 首先我们来看这样一段代码: #include<iostream> using namespace std; ...

  3. C++引用的超详细解释及误区纠正,不看后悔哦(上)

    首先,我们来谈一谈什么是引用以及为什么存在? 引用:即为对象起立另一个名字,引用类型引用另一种类型. 基于C语言的指针,C++将其封装并创建出新的类型--引用.熟悉C语言的小伙伴们会发现,在C语言中指 ...

  4. 超详细解释XGBoost,一篇文章搞懂XGBoost

    XGBoost 文章目录 XGBoost 背景 工程原理 具体形式 怎么做出预测 目标函数 引言 数学详解 明确符号 化简目标函数 符号注释 结论 生成一棵完整的树 贪心算法 加权分位法 工作原理 数 ...

  5. Linux用户(user)与用户组(group)管理(超详细解释)

    Linux用户(user)和用户组(group)管理 用户/组基本概念与特性 1.查看用户的uid/gid 2.用户基本信息文件 (1)用户名 (2)密码 (3)UID (4)GID (5)主目录 ( ...

  6. 三、jQuery 中的 DOM 操作(超详细)

    文章目录 前言 一. DOM 介绍 二. 查找节点 2.1查找元素节点 2.2查找属性节点 三. 创建节点 3.1.创建元素节点 3.2.创建文本节点 3.3.创建属性节点 四.插入节点 4.1 DO ...

  7. 无迹卡尔曼滤波(UKF)超详细解释

    前言:本文运用了大量python语言,读不懂没关系,重点在于理解UKF的思想,如何利用概率分布逼近非线性(通过仿真例子理解).通过对比KF与UKF更容易理解. 引用自: https://github. ...

  8. Python爬虫案例,腾讯动漫爬虫,步骤超详细解释。

    实施步骤 (1) 数据爬取:使用requests请求为基础获取数据源. (2) UA伪装:模拟浏览器访问网址. (3) 数据解析:使用xpath语法处理数据. (4) 数据存储:获取需求数据后使用Ex ...

  9. leetcode 403.青蛙过河 C,C++超详细解释

    一只青蛙想要过河. 假定河流被等分为若干个单元格,并且在每一个单元格内都有可能放有一块石子(也有可能没有). 青蛙可以跳上石子,但是不可以跳入水中. 给你石子的位置列表 stones(用单元格序号升序 ...

  10. C++引用的超详细解释及误区纠正,不看后悔哦(下)

    最后一个板块,我们来详细的探讨下const引用,基本格式为-----const 类型& 在我们编写函数时,经常会发现常将const引用作为形参,这不仅仅是因为想让const修饰的值不在函数体内 ...

最新文章

  1. php特殊函数,PHP常用特殊运算符号和函数的简单示例
  2. 线上故障如何快速排查?来看这套技巧大全
  3. linux查看fcsan设备,fc-san存储
  4. 使用C#将DataTable导出到文件
  5. 串行设备造成鼠标乱跑的问题
  6. BP神经网络模型与学习算法
  7. python中threading模块_举例详解Python中threading模块的几个常用方法
  8. sas 服务器版安装文件,SAS软件各个版本,包括服务器版本的切磋了解
  9. 花生壳 Linux arm
  10. 短视频发布之前要注意什么?从配音到发布时间,选对才能吸粉引流
  11. 软件测试薪资高不高?软件测试工资水平调研公布
  12. 真的明白Code、RO-data、RW-data和ZI-data吗?
  13. 一颗椰子糖机器人_一颗椰子糖的热量
  14. 挑战华为社招:不止面试题,笔记源码统统都有,最强技术实现
  15. 菜鸟教程android数据库,Flutter - Android 菜鸟教程打包
  16. Linux删除Nginx有残留怎么办?
  17. 怎么获取计算机用户权限,W7电脑系统怎么获取administrator权限
  18. R语言实战-第八章 R in action-chapter8
  19. Python递归实现①把嵌套列表压平为一层列表②返回嵌套列表中某元素出现的个数③返回第n个斐波那契数
  20. solr mysql 多表_现在定位胆单双方法请问solr的配置数据库表时可以同时配置多

热门文章

  1. 使用QT5+Opencv完成简单的图像处理及视频处理软件
  2. 荣耀magicbook15C语言,荣耀MagicBook 15 2021版评测:轻薄机身+强悍性能 专为高效率办公而生...
  3. Tensorflow - 训练中出现 Nan 值
  4. Oblog最新注入漏洞分析
  5. 狗狗大全(送给喜欢狗的人)
  6. 删除的文件怎么恢复?
  7. 邮件群发软件如何群发邮件,企业邮箱可以吗?
  8. 绿色数据中心“东数西算”全面启动
  9. h5-吸顶效果的实现方法
  10. 亚马逊自然语言NLP 商品评论智能分析 demo及开发过程 【1 总体API介绍】【持续更新中】