Muy buena explicación la de @zerokilled, solo agregar que sucede algo semejante con los siguiente valores también:
- "" (String vacio)
- 0 (cero)
- undefined (indefinido)
- NaN (no numerico)
Estos valores también los convierte en falso cuando los metemos dentro de un condicional ;)
Código Javascript
:
Ver originalvar x = "";
if(x) //false
x = 0;
if(x) //false
x = undefined;
if(x) //false
x = NaN
if(x) //false
Es muy importante considerar esto cuando desarrollamos con JavaScript!
Saludos