El uso de variables indefinidas en sentencias if
Este fragmento da como resultado un error de tiempo de ejecución de JavaScript: foo
no está definido
if (foo) {
// ...
}
Tengo que definirfoo
primero, así:
var foo = foo || null // or undefined, 0, etc.
... Y solo entonces puedo hacer:
if (foo) {
// ...
}
¿Porqué es eso
Actualizar
Esto fue algo así como una lluvia de ideas en mi lado de las cosas: 'por supuesto, no puedes acceder a una variable que no está asignada.
Fun cosas que puedes hacer un typeof () en una variable indefinida tú. Voy a aceptar micceta respuesta de @ ya que creo que es la solución más elegante.