頁面渲染html過程 null和undefined有什么異同點(diǎn)?
null和undefined有什么異同點(diǎn)?Undefined表示變量聲明但未初始化時的值。Null表示它打算保存對象,但對象的值尚未保存。邏輯上,空值表示空對象指針。JavaScript(ECMASc
null和undefined有什么異同點(diǎn)?
Undefined表示變量聲明但未初始化時的值。Null表示它打算保存對象,但對象的值尚未保存。邏輯上,空值表示空對象指針。JavaScript(ECMAScript標(biāo)準(zhǔn))中有五種基本類型:未定義、null、Boolean、number、string和復(fù)雜類型對象??梢钥吹絥ull和undefined屬于不同的類型。未初始化的定義值按typeof檢測為“未定義”(字符串),而空值按typeof檢測為“對象”(字符串)。不建議在任何時候?qū)⒆兞匡@式設(shè)置為未定義,但如果保存對象的變量沒有真正保存對象,則應(yīng)將其設(shè)置為null。實際上,未定義的值是從空值派生的。ECMAScript標(biāo)準(zhǔn)規(guī)定兩個值的相等性測試應(yīng)返回true
未定義值和未定義值。Null是一個特殊的對象,Nan(不是數(shù)字)是一個特殊的數(shù)字,表示非數(shù)字。(1) Undefined等于null;(2)Nan不等于任何值,也不等于它本身。
undefined等于null么?
在JavaScript中,Undefined、Nan和infinity是全局對象窗口的屬性。所以它們可以被賦值,但是由于它們的內(nèi)部屬性[[writable
為false,賦值實際上是無效的。認(rèn)證:
Object.getOwnPropertyDescriptor(window,“undefined”)//result://object{value:undefined,writeable:false,enumerable:false,configurable:false}
可以看出undefined確實是window的一個屬性,不能寫入。
Null與true和false一樣,是一個文字量和JavaScript的保留字。換句話說,它們類似于123和“foobar”,不能賦值。
為什么undefined,NaN和Infinity可以被賦值,而null不可以?
含義不同??兆址强兆址ū硎尽啊保?,null是null(表示null值),未定義表示沒有初始化。
這三個值的布爾值都是相同的,都是false,其他的都是不同的