我有点困惑。假设我有以下HTML代码:
<div id="foo"></div>
如果我这样写:
var bar = foo;
console.log(bar);
然后,我将其作为输出-令人惊讶的是,具有“ foo” ID的DOM元素:
<div id="foo"></div> // Chrome
[object HTMLDivElement] // FireFox
此行为是否有任何特定原因?还是我的设置有问题?其他人也可以复制吗?如果这是正确的行为,那么我们应何时以及如何使用它?
更新
我看到这里有一个类似的问题,但并非所有问题都已在那里回答。我看到的答案大部分是关于IE特定的问题的,至少在现在,这是不正确的。
因为每个命名元素都成为window
对象的全局属性。
因此,如果您id
为元素赋予,那么您也可以通过window
对象访问它
<div id="foo"></div>
对于上面的元素,你可以这样写
console.log(foo);
相当于
console.log(window.foo);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句