En mi JavaScript, quiero verificar si el elemento con una identificación específica existe o no, lo probé de 2 maneras
1).
var myEle = document.getElementById("myElement"); if(myEle == null){ var myEleValue= document.getElementById("myElement").value; }2).
if(getElementById("myElement")){ var myEleValue= document.getElementById("myElement").value; }pero da el mismo error que a continuación:
Objeto esperado
var myEle = document.getElementById("myElement"); if(myEle){ var myEleValue= myEle.value; }el retorno de getElementById es nulo si un elemento no está realmente presente dentro del dom, por lo que su declaración if fallará, porque nulo se considera un valor falso
Simplemente puede usar if(yourElement)
var a = document.getElementById("elemA"); var b = document.getElementById("elemB"); if(a) console.log("elemA exists"); else console.log("elemA does not exist"); if(b) console.log("elemB exists"); else console.log("elemB does not exist"); <div id="elemA"></div>getElementById
Valor de retorno: un objeto de elemento que representa un elemento con el ID especificado. Devuelve nulo si no existe ningún elemento con el ID especificado, consulte: https://www.w3schools.com/jsref/met_document_getelementbyid.asp
Verdad vs Falso
En JavaScript, un valor veraz es un valor que se considera verdadero cuando se evalúa en un contexto booleano. Todos los valores son verdaderos a menos que se definan como falsos (es decir, excepto falso, 0, "", nulo, indefinido y NaN). ver: https://developer.mozilla.org/en-US/docs/Glossary/Truthy
Cuando el elemento dom no se encuentra en el document , devolverá null . null es Falsy y se puede usar como boolean expression en la instrucción if.
var myElement = document.getElementById("myElement"); if(myElement){ // Element exists }