在写JS脚本的时候,经常会碰到“为空”的判断,其中主要有null和undefined的判断。这两个为空判断的主要区别是:
1) null是JS的关键字,是语法特性。undefined是全局对象的属性,是一个全局属性。
2)typeof null 的值为 "Object" ,typeof undefined 的值是"undefined".
3) 最关键的是null是变量赋值为“null”之后的结果,而undefined是变量声明之后,没有赋值的结果。可以看出声明的变量在没有赋值之前,其值为“undefined",是由全局的这个属性赋值的。
4)在”==“中 ,"null==undefined"的结果为true,但是在”null===undefined"中,结果则为false.