1.null表示尚未存在的对象,转为数值时为0。它表示"没有对象",即该处不应该有值,常用来表示函数企图返回一个不存在的对象。null是一种特殊的object(引用类型),代表一个不确定的对象,但从null本身来说,它既不是对象,也不属于什么类型。
2.undefined是一个表示"无"的原始值,转为数值时为NaN。当声明的变量还未被初始化时,变量的默认值为undefined。undefined表示"缺少值",即此处应该有一个值,但是还没有定义。
3.运算时null与undefined都可以被类型转换为false,但不等值于false。undefined与null相等,但不是全相等。
4.NaN是一种特殊的number,NaN与任何值都不相等,与自己也不相等。
5.Typeof 和 instanceof 常用来判断一个变量是否为空,或者是什么类型。Typeof 是一元运算,放在某个运算数之前,运算数可以是任意类型,对未知进行判断。instanceof 用于判断一个变量是否是某个对象的实例,对已知匹配,比如null instanceof object,返回值为false,因为null本身不是对象,也不是object的实例。