2011-10-07 16 views
7

¿cuál es el mejor uso para el "tipo de" función de JavaScript?tipo de uso para variables indefinidas

if (typeof (myvar) == 'undefined') { 
//or 
if (typeof (myvar) == undefined) { 
//or 
if (typeof myvar == 'undefined') { 
//or 
if (typeof myvar == undefined) { 

Gracias

+0

¿por qué haces esto? simplemente debes hacer 'myvar === undefined'. –

+0

posible duplicado de [¿Cómo puedo determinar si una variable de JavaScript está definida en una página?] (Http://stackoverflow.com/questions/138669/how-can-i-determine-if-a-javascript-variable-is -defined-in-a-page) –

+2

@ DanielA.White Si 'myvar' no ha sido declarado, su código arrojaría' ReferenceError'. – duri

Respuesta

14

typeof is an operator, no una función, y devuelve una cadena; entonces no use use paréntesis y haga compárelo con una cadena.

Al comparar cosas, evite la coerción de tipo a menos que la necesite (es decir, use === no ==).

if (typeof myvar === 'undefined') { 
+0

Gracias por la explicación – Tech4Wilco

4

Uso comparación estricta (===), y la cita: "undefined"

if (typeof myvar === "undefined") {} 
Cuestiones relacionadas