Javascript 文档片段和创建父元素之间有什么区别?

Javascript 文档片段和创建父元素之间有什么区别?,javascript,html,Javascript,Html,这可能是一个非常愚蠢的问题,但我似乎又错过了一些基本问题的要点 我了解如何创建文档片段,在其中构建DOM子树,并将其插入DOM;以及为什么这是有用的 我不理解这与仅仅创建所需的父元素、在该元素中构建DOM子树,然后将其插入DOM之间的区别 首先创建片段的优势是什么?在添加到DOM之前,似乎创建的元素与片段几乎相同,并且都发生在DOM之外 谢谢你的演出。 由于所有节点都一次插入到文档中,因此只会触发一次回流和渲染,而不是单独插入每个节点时可能触发一次 从MDN中,片段允许您创建在当前时间点没有父元

这可能是一个非常愚蠢的问题,但我似乎又错过了一些基本问题的要点

我了解如何创建文档片段,在其中构建DOM子树,并将其插入DOM;以及为什么这是有用的

我不理解这与仅仅创建所需的父元素、在该元素中构建DOM子树,然后将其插入DOM之间的区别

首先创建片段的优势是什么?在添加到DOM之前,似乎创建的元素与片段几乎相同,并且都发生在DOM之外

谢谢你的演出。

由于所有节点都一次插入到文档中,因此只会触发一次回流和渲染,而不是单独插入每个节点时可能触发一次


从MDN中,片段允许您创建在当前时间点没有父元素的同级元素

正如您在本例中看到的,我们创建了两个跨度,并使用片段将它们添加到已经创建的div中,因此这些跨度是直接子级

const main=document.getElementById'main' 设frag=document.createDocumentFragment 设span1=document.createElement'span' span1.textContent='hello' 框架1 设span2=document.createElement'span' span2.textContent='world' 框架2 梅因·奇尔弗拉格
因为有时您不希望在dom中插入单个节点,而是希望在片段有用的位置插入多个同级元素。如果您还需要创建父元素,则不需要创建片段。当您需要多个兄弟插入,但不需要创建它们的父项时,您将使用片段。谢谢。我读过。我提到的父元素在将其所有子元素添加到DOM中之后,仍然只添加到DOM中一次,就像父元素是片段一样。。因此,我不理解与片段相关的性能差异。感谢您花时间写出这个示例,让它更清晰。