sábado, 10 de marzo de 2012

¿Como saber si existe una variable en javascript?

Tarvez pensemos que es algo simple, aunque lo es, pero esto nos puede causar varios errores en nuestro código y no encontremos la solución de este problema.

Al principio podemos preguntar simplemente:
if(miVariable){ alert("si existe"); }
else{ alert("no existe"); }

Si hacemos esto vamos a recibir un error diciendo que miVariable no está definida y esto va a parar la ejecución del código.

Un día se me presento este problema, y como hacen todos recorrí a google para encontrar una solución, pero las soluciones a este problema no eran muy adecuadas como por ejemplo:

if(typeof(miVariable) != "undefined"){ alert("si existe"); }
else{ alert("no existe"); }

Este código funciona pero no es el mas adecuado y es posible que no se comporte igual en todos los navegadores, así pensé en una solución mas adecuada y de inmediato me llego a la mente el objeto window, pues como no, donde mas se guardarían las variables sino aquí en este objeto.

Cuando creamos una variable en JavaScript esta se guardan en el objeto window y de este modo si queremos saber si una variable existe usamos un simple if, y le preguntamos al objeto windows si existe la variable como se muestra en el siguiente código:

if (window.miVariable ){
alert ("Existe");
}else{
alert ("No Existe");
}

Este código funcionara correctamente en cualquier navegador.