低效的DOM操作(js的问题)

使用 JavaScript 操作DOM(即添加、修改和删除元素)是相对容易,但操作效率却不怎么样。

比如,每次添加一系列DOM元素。添加一个DOM元素是一个昂贵的操作。连续添加多个DOM元素的代码是低效的。

当需要添加多个DOM元素时,一个有效的替代方法是使用 document fragments来代替,从而提高效率和性能。

html 复制代码
var div = document.getElementsByTagName("my_div");
	
var fragment = document.createDocumentFragment();

for (var e = 0; e < elems.length; e++) {  // elems previously set to list of elements
    fragment.appendChild(elems[e]);
}
div.appendChild(fragment.cloneNode(true));

除了这种方法固有的效率提高外,创建附加的DOM元素是很昂贵的,而在分离的情况下创建和修改它们,然后再将它们附加上,就会产生更好的性能。

相关推荐
小飞侠在吗几秒前
vue Hooks
前端·javascript·vue.js
lubiii_2 分钟前
Aircrack-ng工具使用原理与实操笔记
开发语言·网络·web安全·php
weixin_307779134 分钟前
Jenkins Metrics 插件全解析:从数据采集到智能监控的实践指南
运维·开发语言·架构·jenkins
阿拉伯柠檬6 分钟前
实现一个异步操作线程池
开发语言·数据结构·c++·面试
小茴香3537 分钟前
vue3的传参方式总结
javascript·vue.js·typescript
半瓶榴莲奶^_^8 分钟前
后端Web进阶(AOP)
java·开发语言
梵得儿SHI8 分钟前
Vue 核心语法深度解析:生命周期与响应式之计算属性(computed)与侦听器(watch/watchEffect)
前端·javascript·vue.js·计算属性·侦听器·缓存机制·数据派生
anuoua9 分钟前
歼20居然是个框架-基于 Signals 信号的前端框架设计
前端·javascript·前端框架
raoxiaoya10 分钟前
ADK-Go:Golang开发AI Agent
开发语言·人工智能·golang
一只乔哇噻11 分钟前
java后端工程师+AI大模型开发进修ing(研一版‖day61)
java·开发语言·学习·算法·语言模型