js基础语法-null和undefined

[color=Blue]null:[/color]
JavaScript关键字null是一个特殊的值,它表示"空值"。null常常被看作对象类型的一个特殊值,代表对象为空或者变量没有引用任何对象。
【注意】typeof(null)的值是object,可以这么理解,变量的值虽然是null,表示它并未引用任何对象,当是它"将要"或者说"可以"引用对象,所以它的类型为object,但是null本身不是对象,不要把它看做特殊的对象。
[color=Blue]undefined:[/color](独一无二的类型)
undefined与null不同,它表示的是"无值",并且具有独一无二的类型,typeof(undefined)的值是undefined。一个未定义的变量,或者已经声明但还未赋值的变量,或者一个并不存在的对象属性,他们的值都是undefined。
【注意】虽然undefined和null不同,但是运算符"=="却将它们视为相等的值,有时候这种相等性正式我们想要的,eg:
my.prop == null;
如果属性my.prop并不存在或者它存在但是值为null,那么这个表达式的值为true。通常这正是我们想要的结果。如果必须要明确区分null和undefined,可以使用"==="运算符或typeof运算符。
和null不同,undefined不是JavaScript的保留字。

评论 ( 0 )
最新评论
暂无评论

赶紧努力消灭 0 回复