null
y undefined
son dos conceptos diferentes. undefined
es la falta de valor (si define una variable con var sin inicializarla, no contiene null
, pero undefined
), mientras que con null
la variable existe y se inicializa con el valor null
, que es un tipo especial de valor .
El operador de igualdad de JavaScript está roto, sin embargo, Crockford descubrió que carece de transitividad y por esta razón sugiere utilizar siempre la estricta igualdad (===). Considera esta tabla publicada en Javascript las partes buenas:
'' == '0' // false
0 == '' // true
0 == '0' // true
false == 'false' // false
false == '0' // true
false == undefined // false
false == null // false
null == undefined // true
Mismo tiempo. Impresionante – Raynos
@Raynos: Sí, esperé unos segundos extra para que pudieras ponerte al día. ; o) – user113716