js创建dom节点和优化

先列举常用的几种方式:

createElement() 创建一个元素节点 => 接收参数为string类型的nodename

createTextNode() 创建一个文本节点 => 接收参数为string类型的text内容

createAttribute() 创建一个属性节点 => 接收参数为string类型的属性名称

createComment() 创建一个注释节点 => 接收参数为string类型的注释文本

除了这几个,还有一个常常会被我们忽略createDocumentFragment方法,它是用来创建虚拟的节点对象,或者说是碎片节点。

createDocumentFragment

DocumentFragment节点不属于节点树,继承的parentNode属性总是null,当我们要把DocumentFragment节点插入文档树时,插入不是他本身,而是他所有的子孙节点。

createDocumentFragment带来的性能优化

当需要添加多个dom元素时,如果先将这些元素添加到DocumentFragment中,再统一将DocumentFragment添加到页面,会减少页面渲染dom的次数,效率会明显提升。

还有一个很重要的特性是,如果使用appendChid方法将原dom树中的节点添加到DocumentFragment中时,会删除原来的节点。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 14,035评论 6 13
  • 原文 链接 关注公众号获取更多资讯 一、基本类型介绍 1.1 Node类型 DOM1级定义了一个Node接口,该接...
    前端进阶之旅阅读 9,388评论 7 34
  • 什么是DOM??? DOM(Document Object Model 文档对象模型)是针对HTML和XML文档的...
    荧惑3_3阅读 5,309评论 0 1
  • 真正的生活在于知道自己想要什么想得到什么,或者说有一个方向。当我不知道自己该如何是~又该怎么去选择或者说怎样去做 ...
    白夜微雨阅读 1,270评论 0 0
  • 不知哪位伟人说过:这世界上没有完全相同的两片树叶,也没有完全一样的两个人。因为,我们每个人都拥有着自己独特的模样...
    肠古木焱冰阅读 4,700评论 1 2

友情链接更多精彩内容