JS中判斷null、undefined與NaN的方法

風靈使發表於2018-08-30

寫了個 str ="s"++;

然後出現Nan,找了一會。

收集資料如下判斷:

1.判斷undefined:

var tmp = undefined; 
if (typeof(tmp) == "undefined"){ 
alert("undefined"); 
}

說明:typeof 返回的是字串,有六種可能:"number"、"string"、"boolean"、"object"、"function"、"undefined"

2.判斷null:

var tmp = null; 
if (!tmp && typeof(tmp)!="undefined" && tmp!=0){ 
alert("null"); 
}

3.判斷NaN:

var tmp = 0/0; 
if(isNaN(tmp)){ 
alert("NaN"); 
}

說明:如果把 NaN 與任何值(包括其自身)相比得到的結果均是 false,所以要判斷某個值是否是 NaN,不能使用 ===== 運算子。

提示:isNaN() 函式通常用於檢測 parseFloat()parseInt() 的結果,以判斷它們表示的是否是合法的數字。當然也可以用 isNaN() 函式來檢測算數錯誤,比如用 0 作除數的情況。

4.判斷undefinednull:

var tmp = undefined; 
if (tmp== undefined) 
{ 
alert("null or undefined"); 
}


var tmp = undefined; 
if (tmp== null) 
{ 
alert("null or undefined"); 
}

說明:null==undefined

5.判斷undefinednullNaN:

var tmp = null; 
if (!tmp) 
{ 
alert("null or undefined or NaN"); 
}

提示:一般不那麼區分就使用這個足夠。

相關文章