我已经使用 JavaScript 好几年了,从不关心null
&undefined
之前的区别,我总是用它undefined
来验证对象的存在。
但最近我通过这篇文章。他们在这里说
JavaScript 区分 null 和 undefined,它是一个“object”类型的对象,表示故意的非值,它是一个“undefined”类型的对象,表示一个未初始化的值——也就是说,一个值甚至没有被初始化。尚未分配。稍后我们将讨论变量,但在 JavaScript 中,可以声明一个变量而不给它赋值。如果你这样做,变量的类型是未定义的。
我现在完全糊涂了,这里到底什么是非价值。这个非值与undefined
. javascript返回什么情况null
。
我已经尝试了以下示例
var sam;
alert(sam); // returns undefined
和
try {
//var sam;
alert(sam);
} catch(ex) { } // exception says: sam is undefined
而且我不确定js何时返回空值。有人可以澄清我。