Javascript 将div附加到主体上

Javascript 将div附加到主体上,javascript,performance,Javascript,Performance,我有一个html页面,我试图在主体中附加一个div,只要div在主体标记中,它就附在哪里并不重要。我知道document.getElementById很昂贵,因为它在DOM树上执行搜索。我考虑的另一个选项是document.body和附加div body。还有比这两个更好的选项吗?如果您有DOM元素: document.body.appendChild(divElement); 如果没有DOM元素,则只有一个字符串: document.body.innerHTML += "<div>

我有一个html页面,我试图在主体中附加一个div,只要div在主体标记中,它就附在哪里并不重要。我知道document.getElementById很昂贵,因为它在DOM树上执行搜索。我考虑的另一个选项是document.body和附加div body。还有比这两个更好的选项吗?

如果您有DOM元素:

document.body.appendChild(divElement);
如果没有DOM元素,则只有一个字符串:

document.body.innerHTML += "<div>yay, I'm on body!</div>";
document.body.innerHTML+=“耶,我在body上!”;

而且,据您所知,
document.getElementById
不用于在DOM中追加内容。它只返回DOM元素,如果它存在的话,按ID搜索。而且它并不昂贵——事实上,这是搜索元素的更快的方法

如果您有DOM元素:

document.body.appendChild(divElement);
如果没有DOM元素,则只有一个字符串:

document.body.innerHTML += "<div>yay, I'm on body!</div>";
document.body.innerHTML+=“耶,我在body上!”;

而且,据您所知,
document.getElementById
不用于在DOM中追加内容。它只返回DOM元素,如果它存在的话,按ID搜索。而且它并不昂贵——事实上,这是搜索元素的更快的方法

这是微观优化。我不会担心的。你可以使用
document.write('My div!')
。我在这一点上支持@Stijn,我真的不会担心它。@Pieter-他担心getElementById的性能,而你建议使用jQuery@但是你可能应该加上“…直到它成为一个问题”。唐纳德·克努特(Donald Knuth)对此有一句话:“过早的优化是万恶之源”,这就是微观优化。我不会担心的。你可以使用
document.write('My div!')
。我在这一点上支持@Stijn,我真的不会担心它。@Pieter-他担心getElementById的性能,而你建议使用jQuery@但是你可能应该加上“…直到它成为一个问题”。Donald Knuth对此有一个解释:“过早优化是万恶之源”,谢谢你的回答,但我知道document.getElementById不用于向dom追加内容,我的意思是使用document.getElementById方法获取div,然后将div追加到返回的值中。谢谢你的回答,但是我知道document.getElementById不用于将内容追加到dom中,我的意思是使用document.getElementById方法获取div,然后将div追加到返回的值中。