JavaScript中的Undefined / Null 類型相關說明

1,綜述:spa

  ※Undefined 和 Null是JavaScript中的兩種數據類型(其餘的類型還有:Boolean, String, Number, Object)。指針

  ※Undefined類型只有一個值:undefined;Null類型也只有一個值:null。對象

2,Undefined類型相關說明:ip

  ※在使用了var聲明瞭相關變量但未對其初始化時,這個變量的值就是undefined。變量

  ※這和未經聲明(即未經定義)的變量不同,若是使用未經聲明的變量,會報錯ReferenceError: s is not defined。object

  ※對於還沒有聲明的變量只能進行一個操做:使用typeof 操做符檢測其數據類型,然而使人困惑的是,對未經初始化和未經聲明的變量執行typeof操做符都返回 undefined 值。這個結果有其邏輯上的合理性,雖然這兩種變量從技術角度看有本質的區別,但實際上不管對哪一種變量也不可能執行真正的操做。數據類型

3,Null類型相關說明:技術

  ※首先,null是一個初始化的值。從邏輯角度講,null值表示一個空的對象指針,因此使用typeof操做符檢測null值(或檢測值爲null的變量)返回值爲"object";數據

  ※只要意在保存對象的變量尚未真正保存對象,就應該明確的讓該變量初始化爲null值,這樣作不只能夠體現出null做爲空對象指針的慣例,並且還有助於進一步區分null和undefined。undefined

4,其餘須要注意的地方:

  ※上面說到若是使用未聲明的變量會報錯,但若是做爲對象的一個屬性訪問,即便這個屬性還沒有聲明(定義),也不會報錯,而是返回undefined。見下例:

  alert(sss);//報錯

  var o = {}; alert(o.sss);//undefined.

  通常來講,若是訪問對象的屬性返回了undefined值,就表示此屬性未定義(固然像var o = {sss:undefined}也會返回undefined)。

相關文章
相關標籤/搜索