null表示沒(méi)有對(duì)象,即該處不應(yīng)該有值。典型用法是:作為函數(shù)的參數(shù),表示該函數(shù)的參數(shù)不是對(duì)象。作為對(duì)象原型鏈的終點(diǎn)。undefined表示缺少值,就是此處應(yīng)該有一個(gè)值,但是還沒(méi)有定義。典型用法是:變量被聲明了,但沒(méi)有賦值時(shí),就等于undefined。
null的字面意思是“空值”,這個(gè)值的語(yǔ)義是,希翼表示一個(gè)對(duì)象被人為的重置為空對(duì)象,而非一個(gè)變量最原始的狀態(tài)。在內(nèi)存里的表示就是,棧中的變量沒(méi)有指向堆中的內(nèi)存對(duì)象。
undefinedundefined的字面意思就是未定義的值,這個(gè)值的語(yǔ)義是,希翼表示一個(gè)變量最原始的狀態(tài),而非人為操作的結(jié)果。這種原始狀態(tài)會(huì)在以下4種場(chǎng)景中浮現(xiàn):
(1)聲明了一個(gè)變量,但沒(méi)有賦值
(2)訪問(wèn)對(duì)象上不存在的屬性
(3)函數(shù)定義了形參,但沒(méi)有傳遞實(shí)參
(4)使用void對(duì)表達(dá)式求值
來(lái)源:高三網(wǎng)
能發(fā)現(xiàn)自己知識(shí)上的薄弱環(huán)節(jié),在上課前補(bǔ)上這部分的知識(shí),不使它成為聽(tīng)課時(shí)的“絆腳石”。這樣,就會(huì)順利理解新知識(shí),相信通過(guò)null和undefined的區(qū)別這篇文章能幫到你,在和好朋友分享的時(shí)候,也歡迎感興趣小伙伴們一起來(lái)探討。