1. 程式人生 > >js中的null和undefined

js中的null和undefined

null是js的關鍵字,它表示一個特殊值,通常用來描述“空值“,對null進行type運算返回字串“object”,可以將null認為是一個特殊的物件值,含義是“非物件”。但通常認為null是它自有型別的唯一一個成員,它可以表示數字、物件和字串是“無值的”。

undefined是預定義的全域性變數(它和null不一樣,它不是關鍵字),它的值就是“未定義”,他是變數的一種取值,表示變數沒有初始化。。在ECMAScript 3中,undefined是可讀/寫的變數,可以給它賦任意值。這個錯誤在ECMAScript 5中做了修正,undefined在該版本是隻讀的,如果使用type型別運算子對undefined進行運算,得到“undefined”,表明這個值是這個型別的唯一成員。

儘管null和undefined是不同的,但用“==”判斷他們,認為是相等的,使用嚴格相等“===”運算子區分它們。null和undefined都不包含任何屬性和方法。