天天看點

js中由undefined說起

typeof()函數 傳回的是字元串,有六種可能:"number"、"string"、"boolean"、"object"、"function"、"undefined"

js中undefined,null,nan的差別

1.類型分析:

js中的資料類型有undefined,boolean,number,string,object等5種,前4種為原始類型,第5種為引用類型。

未定義的值和定義未指派的為undefined,null是一種特殊的object,nan是一種特殊的number。

2.比較運算

var a1;         //a1的值為undefined

var a2 = null;

var a3 = nan;

alert(a1 == a2); //顯示"true"

alert(a1 != a2); //顯示"false"

alert(a1 == a3); //顯示"false"

alert(a1 != a3); //顯示"true"

alert(a2 == a3); //顯示"false"

alert(a2 != a3); //顯示"true"

alert(a3 == a3); //顯示"false"

alert(a3 != a3); //顯示"true"

從上面的代碼可以得出結論:(1)undefined與null是相等;(2)nan與任何值都不相等,與自己也不相等。

提示和注釋

提示:隻能用 === 運算來測試某個值是否是未定義的,因為 == 運算符認為 undefined 值等價于 null。

注釋:null 表示無值,而 undefined 表示一個未聲明的變量,或已聲明但沒有指派的變量,或一個并不存在的對象屬性。