[问题] undefined null的差别?

楼主: lunamiou (○苗○乌)   2013-12-02 01:35:43
看书的前面写到
var firstName = null;
上面的程式一般用于初始化变量,表示尚不需要为该变量赋与一个实际值;
例如下面的程式,Object的一个实例info_obj的属性message尚未初始化,
那么,其值就是null:
var info_obj = new Object();
info_obj.message;
alert(info_obj.message == null); //true
undefined 常数
undefined常数用于尚未初始化的变量或未初始化的
动态物件属性的特殊值。
例如下面的两个变量都是undefined
var firstName;
var lastName;
这个跟null有差别吗?
再看下面的程式,user是Object类别的一个实例,该实例的sex属性如果
未初始化,那么其属性值为undefined,而非null,因为Object并非动态
类别。例如下面的程式:
var user = new Object();
alert(user.sex); //输出undefined
----------------------------
以上看完还是疑惑,什么样的结果是null,什么会是undefined呢?
这本书写的“类别”是什么意思,英文的原文会是?
另外“动态物件属性”、“动态类别”的意思分别是?
小的才学疏浅,这边看了几次还是不太懂,
还请大家指教一下,感激感激~~~ <(__ __)>
作者: jenesis (ゼネシス)   2013-02-02 02:22:00
基本上你只是宣告什么事都没对他做就是undefined 就酱
作者: Rplus (R+) (9527)   2013-02-02 02:23:00
虽然我也不是很懂 但第一个输出其实是 undifined 而非 null=== 跟 == 有时结果会不一样的 null type 跟undefined 不同比如跟一位口述画家讲要画一个人只讲了要画裤子,但没说要画哪一种裤子(undefined)另一情况是特别提说"不画裤子"(null)两种情况的结果都会是没穿裤子 (== null),但意义有些不同
作者: SansWord (是妳)   2013-02-02 03:26:00
不一样喔,typeof null 和 typeof undefined 是不同的

Links booklink

Contact Us: admin [ a t ] ucptt.com