如果定义的变量准备在将来用户保存对象,那么最好将该变量初始化为null而不是其他值。这样一来,只要直接检查null值就可以知道相应的变量是否已经保存了一个对象的引用,如下面的例子:
实际上,undefined值是派生自null值的,因此ECMA-262规定对他们的相等测试要返回true:
通过Object.is()方法,可以准确判断变量是否为 nulllet a = null
let b = {}
let c
Object.is(a, null)// true
Object.is(b, null)// false
Object.is(c, null)// false
方法//判断是否是Nullfunction isNull(obj){return obj === null
}//判断是否是NaNfunction isNaN(obj){return obj !== obj
}//判断是否是undefinedfunction isUndefined(obj){return obj === void 0
}`