【undefined與null的區(qū)別】

undefined與null的區(qū)別


字面的含義

聲明變量未定義:undefined;(例:var a;)

有定義,但內(nèi)容為空的對象:null。

從字面上來理解undefined和null其實(shí)相對比較簡單:

undefined表示的是聲明一個變量之后我們并沒有給它定義內(nèi)容。

null表示的是有定義,定義的是一個空對象。


最初的區(qū)分方式

null是一個表示"無"的對象,轉(zhuǎn)為數(shù)值時為0;

undefined是一個表示"無"的原始值,轉(zhuǎn)為數(shù)值時為NaN。


目前的用法

null表示"沒有對象",即該處不應(yīng)該有值。

null出現(xiàn)在哪里?

對于函數(shù)的參數(shù),為了表示該函數(shù)的參數(shù)不是對象,會使用null。這種用法在傳參時經(jīng)常遇到此類應(yīng)用。

對象原型鏈的終點(diǎn)是null。


undefined表示"缺少值",就是此處應(yīng)該有一個值,但是還沒有定義。

undefined會出現(xiàn)在哪里?

1、變量被聲明了,但沒有賦值,默認(rèn)為undefined

2、調(diào)用函數(shù)時,應(yīng)該提供的參數(shù)沒有提供,該參數(shù)默認(rèn)為undefined

3、對象沒有賦值的屬性,該屬性的值默認(rèn)為undefined

4、函數(shù)沒有返回值時,默認(rèn)返回undefined

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 在常見的強(qiáng)類型語言中,通常有一個表示“空”的值,比如NULL。但是在JavaScript中,空(或者叫“無值”)有...
    _李雷閱讀 434評論 0 0
  • 1、相似性 if (!undefined) console.log('undefined is false'); ...
    箱貓日和閱讀 395評論 0 1
  • 一、相似性 在JavaScript中,將一個變量賦值為undefined或null,老實(shí)說,幾乎沒區(qū)別。 unde...
    前端混合開發(fā)閱讀 276評論 0 1
  • 一夜秋風(fēng)起,葉兒黃,花兒謝。 即使是素雅的秋天,也有屬于她的艷麗。那就準(zhǔn)備開始辣眼睛吧。
    一朵喵的日常閱讀 278評論 0 0
  • 最近一切都出了問題,是自己找不到自己也做不到很多事情。明明都懂,有時記不住,有時不愿意,太過隨心,失了前進(jìn)的動力,...
    慕以朝歌閱讀 94評論 0 0

友情鏈接更多精彩內(nèi)容