null與undefined的區別

2021-10-07 17:47:53 字數 691 閱讀 6520

console.log(null==undefined)//true

console.log(null===undefined)//false

觀察可以發現:null和undefined 兩者相等,但是當兩者做全等比較時,兩者又不等。

原因:null: null型別,代表「空值」,代表乙個空物件指標,使用typeof運算得到 「object」,所以你可以認為它是乙個特殊的物件值。

undefined: undefined型別,當乙個宣告了乙個變數未初始化時,得到的就是undefined。
實際上,undefined值是派生自null值的,ecmascript標準規定對二者進行相等性測試要返回true,

null表示"沒有物件",即該處不應該有值。典型用法是:

(1) 作為函式的引數,表示該函式的引數不是物件。

(2) 作為物件原型鏈的終點。

undefined表示"缺少值",就是此處應該有乙個值,但是還沒有定義。典型用法是:

(1)變數被宣告了,但沒有賦值時,就等於undefined。

(2) 呼叫函式時,應該提供的引數沒有提供,該引數等於undefined。

(3)物件沒有賦值的屬性,該屬性的值為undefined。

(4)函式沒有返回值時,預設返回undefined。

undefined與null的區別

undefined表示 缺少值 就是此處應該有乙個值,但是還沒有定義。典型用法是 1 變數被宣告了,但沒有賦值時,就等於undefined。2 呼叫函式時,應該提供的引數沒有提供,該引數等於undefined。3 物件沒有賦值的屬性,該屬性的值為undefined。4 函式沒有返回值時,預設返回un...

undefined與null的區別

現在再去聊這個的話基本上大家都很熟悉了,對於新手來說可以加強鞏固吧。因為阮一峰老師的文章裡面已經寫很明白 undefined與null的區別 null 空物件指標 沒有具體的值 一般都是我們手動設定初始的值為null,後期的話會給其賦值 undefined 未定義 連東西都沒有 一般都是瀏覽器預設的...

undefined與null的區別

現在再去聊這個的話基本上大家都很熟悉了,對於新手來說可以加強鞏固吧。因為阮一峰老師的文章裡面已經寫很明白 undefined與null的區別 null 空物件指標 沒有具體的值 一般都是我們手動設定初始的值為null,後期的話會給其賦值 undefined 未定義 連東西都沒有 一般都是瀏覽器預設的...