Pregunta

Tengo código que se envuelve en bloque try / catch. Yo uso typeof para averiguar si se define una variable:

if (typeof (var) == 'string') { 
    //the string is defined
}

Sin embargo, el uso de este en un bloque try / catch, salta a la parte de captura en lugar de hacer lo que se suppoed hacer (hacer algo con la cadena si su definido).

¿Cómo puedo comprobar si una variable está definida sin activar una excepción?

¿Fue útil?

Solución

'var' no es un nombre válido de variable -. Que es una palabra clave

Aparte de eso, lo que tiene debe ser correcta.

Otros consejos

Me gustaría utilizar una comparación directa sin 'typeof':

var vvv= 2;
alert( vvv !== undefined );

Tenga cuidado, sin embargo, saber si desea comprobar si hay truliness (no falso, nulo, indefinido, "" o 0), contra nulo, indefinido, falsa o una combinación de éstos.

Si simplemente desea ver que el valor tiene un valor, el código coloqué arriba debe hacer.

Como sugerencia, he encontrado este libro tremenda JavaScript - las partes buenas

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top