在Javascript中,
undefined表示变量已被声明但尚未分配值,例如:
var TestVar;alert(TestVar); //shows undefinedalert(typeof TestVar); //shows undefined
null是分配值。可以将其分配给变量,以表示没有值:
var TestVar = null;alert(TestVar); //shows nullalert(typeof TestVar); //shows object
从前面的示例中可以明显看出,
undefined和
null是两个不同的类型:
undefined是类型本身(未定义),
null而是对象。
null === undefined // falsenull == undefined // truenull === null // true
和
null = 'value' // ReferenceErrorundefined = 'value' // 'value'



