javascript - que - document.getelementbyId devolverá nulo si el elemento no está definido?
document.getelementbyid(...) is null (3)
Sí, devolverá el valor nulo si no está presente, puede probar esto a continuación en la demostración. Ambos volverán verdaderos. Los primeros elementos existen, el segundo no existe.
Html
<div id="xx"></div>
Javascript:
if (document.getElementById(''xx'') !=null)
console.log(''it exists!'');
if (document.getElementById(''xxThisisNotAnElementOnThePage'') ==null)
console.log(''does not exist!'');
En mi código, veo esto:
if (document.getElementById(''xx'') !=null) {
//do stuff
}
Si el elemento xx
no está definido, ¿se evaluará como verdadero o falso?
Debo escribir:
if (document.getElementById(''xx''))
¿para estar seguro?
getElementById
está definido por el HTML de nivel 1 de DOM para devolver un null
en el caso de que no coincida ningún elemento.
!==null
es la forma más explícita de la comprobación, y probablemente la mejor, pero no hay un valor falso no null
que pueda devolver getElementById
; solo puede obtener un null
o un objeto Elemento siempre verdadero. Entonces, no hay una diferencia práctica entre !==null
!=null
o la más floja if (document.getElementById(''xx''))
.
console.log(document.getElementById(''xx'') ) evaluates to null.
document.getElementById(''xx'') !=null evaluates to false
Debe usar document.getElementById(''xx'') !== null
ya que es una verificación de igualdad más fuerte.