我想在弹出窗口中创建许多行以使用 for 循环显示我的数据,我使用文本字符串来创建和附加 div ,但是我发现 document.createElement
是高性能的,并且使用了将性能提高 20% 的方法,但是由于我填充了 1000 行,因此创建元素所需的时间为 document.createElement
非常高。有没有办法通过一次创建元素并在大量实例中重用它来提高性能,对此的任何建议将不胜感激
最佳答案
创建元素后,您可以使用 Element.cloneNode()
复制它。与 document.createElement()
所用时间相同,但有一个优点:如果您在元素上设置了多个属性或 childNodes/innerHTML,您也可以通过一次调用复制它们:Element.cloneNode(true)
.
大多数时间都花在新创建元素的 DOM 插入上,因此每个新元素的插入都很慢。更快的方法是创建 documentFragment
,将所有新元素附加到您需要的结构中,然后将完整的片段添加到 DOM。
关于javascript - "document.createElement"性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26034314/