當前位置:
首頁 > 科技 > 3分鐘帶你搞明白Null和Undefined

3分鐘帶你搞明白Null和Undefined

很多同學在學習的時候,經常沒辦法分清楚undefined和null的區別,認為他們兩個都是沒有值的意思,那麼幾天的教程,就來和大家談談他們的區別,喜歡的朋友可以點一下關注。

—— 不怎麼華麗的分割線 ——

問題一:null是什麼?

關於有兩點需要掌握:

是一個值

是被賦值來的

看一共Demo,我們給 a 變數賦值為 null:

問題二:undefined是什麼?

通常表示一個變數單單被聲明過,但是沒有初始化,例如如下Demo:

你也可以特意的給一個變數賦值為,不過正常場景下不會這麼使用

還有一點,當訪問對象不存在的屬性時,我們會得到


和的相同點

在 JS 語言中,有6個的值,其中和是六個值中的兩個。

falsy 值:

false

0 (zero)

「」 (empty string)

null

undefined

NaN (Not A Number)

其餘所有的值則皆為。

另外, JS 語言中有六個原始數據類型,和是其中兩個原始類型的值。原始數據類型:

Boolean

Null

Undefined

Number

String

Symbol

不在上述六種之內的就都是引用類型。但是有趣的是,當你使用來校驗時,返回的卻是,可以簡單理解為這是js 在最初引入的一個 bug。


Null !== Undefined

通過上面的介紹,你可能已經隱隱約約的感覺到了和是不同的,但非常相似。所以,但是


和存在差異的實際應用場景

說了那麼多,那我們到底要怎麼用呢?這才是關鍵對不對。

Demo1 我們在ES6中用到的默認參數。

就上述代碼,大家可以再和我一同回憶下ES5的默認參數的寫法

最後總結

是被賦值出來的,它用來表示空

通常表示一個變數被聲明了,但是沒有被初始化

和都是值

和都是原始數據類型,但JS 語言的bug導致

如果你覺得對你有用,請轉發給你的小夥伴門哦。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 WEB開發李家靖 的精彩文章:

你會犯哪些網頁設計最常見可用性錯誤?

TAG:WEB開發李家靖 |