JavaScript document.getElementById("id")和元素id属性

mik*_*e m 5 javascript dom

我有:

<div id="myDiv1"></div>
<div id="myDiv2"></div>
Run Code Online (Sandbox Code Playgroud)

在JavaScript中,我可以通过编写来设置div innerHTML:

myDiv1.innerHTML = "myDiv1, Hi!"
Run Code Online (Sandbox Code Playgroud)

要么

document.getElementById("myDiv2").innerHTML = "myDiv2, Hi!"
Run Code Online (Sandbox Code Playgroud)

当我可以简单地使用元素Id时,为什么要使用document.getElementById?这是每次还是仅在某些特殊情况下(如简单样本)?

谢谢,

麦克风

T.J*_*der 7

当我可以简单地使用元素Id时,为什么要使用document.getElementById?

避免冲突.浏览器上的全局命名空间非常拥挤,各种各样的东西被抛弃,包括(如你所见)全局引用任何元素id(所谓的"自动全局").

相比之下,getElementById只有它所说的,才能找到一个元素id; 它更受限制.(除了旧版本的IE中的错误,它还查看了具有name属性的元素.)