Vic*_*tor 28 javascript domdocument
在我的代码中,我看到了这个:
if (document.getElementById('xx') !=null) {
//do stuff
}
Run Code Online (Sandbox Code Playgroud)
如果xx未定义元素,这将评估为true还是false?
我应该写:
if (document.getElementById('xx'))
Run Code Online (Sandbox Code Playgroud)
安全吗?
Gar*_*ett 67
console.log(document.getElementById('xx') ) evaluates to null.
document.getElementById('xx') !=null evaluates to false
Run Code Online (Sandbox Code Playgroud)
你应该使用document.getElementById('xx') !== null它,因为它是一个更强大的平等检查.
bob*_*nce 18
getElementById由DOM Level 1 HTML定义,null在没有元素匹配的情况下返回.
!==null是最明确的检查形式,可能是最好的,但没有可以返回的非null虚假值getElementById- 你只能得到null或者总是真实的Element对象.所以这里没有实际的区别!==null,!=null或者更宽松if (document.getElementById('xx')).
是的,如果不存在,它将返回null您可以在演示中尝试以下操作.两者都将返回true.第一个元素存在,第二个元素不存在.
HTML
<div id="xx"></div>
Run Code Online (Sandbox Code Playgroud)
使用Javascript:
if (document.getElementById('xx') !=null)
console.log('it exists!');
if (document.getElementById('xxThisisNotAnElementOnThePage') ==null)
console.log('does not exist!');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
97191 次 |
| 最近记录: |