標籤:注意 error object bool 未定義 ring not java cee
1,綜述:
※Undefined 和 Null是JavaScript中的兩種資料類型(其他的類型還有:Boolean, String, Number, Object)。
※Undefined類型只有一個值:undefined;Null類型也只有一個值:null。
2,Undefined類型相關說明:
※在使用了var聲明了相關變數但未對其初始化時,這個變數的值就是undefined。
※這和未經聲明(即未經定義)的變數不一樣,如果使用未經聲明的變數,會報錯ReferenceError: s is not defined。
※對於尚未聲明的變數只能進行一個操作:使用typeof 操作符檢測其資料類型,然而令人困惑的是,對未經初始化和未經聲明的變數執行typeof操作符都返回 undefined 值。這個結果有其邏輯上的合理性,雖然這兩種變數從技術角度看有本質的區別,但實際上無論對哪種變數也不可能執行真正的操作。
3,Null類型相關說明:
※首先,null是一個初始化的值。從邏輯角度講,null值表示一個空的對象指標,所以使用typeof操作符檢測null值(或檢測值為null的變數)傳回值為"object";
※只要意在儲存對象的變數還沒有真正儲存對象,就應該明確的讓該變數初始化為null值,這樣做不僅可以體現出null作為空白對象指標的慣例,而且還有助於進一步區分null和undefined。
4,其他需要注意的地方:
※上面說到如果使用未聲明的變數會報錯,但如果作為對象的一個屬性訪問,即使這個屬性尚未聲明(定義),也不會報錯,而是返回undefined。見下例:
alert(sss);//報錯
var o = {}; alert(o.sss);//undefined.
一般來說,如果訪問對象的屬性返回了undefined值,就表示此屬性未定義(當然像var o = {sss:undefined}也會返回undefined)。
JavaScript中的Undefined / Null 類型相關說明