js判斷變數是否為null(1)
阿新 • • 發佈:2019-02-11
我們在進行判斷時,有時會判斷獲取到的物件是否為空值,JS變數值的特殊性,容易犯一些錯。
先上一些不正確的判斷用法
var exp = null;
if (exp == null)
{
alert("is null");
}
exp 為undefined時,也會得到與null相同的結果,雖然null和undefined不一樣。
var exp = null;
if (!exp)
{
alert("is null");
}
如果exp為undefined或者數字零,也會得到與null相同的結果,雖然null和二者不一樣。
var exp = null;
if (typeof(exp) == "null")
{
alert("is null");
}
為了向下相容,exp為null時,typeof總返回object。
var exp = null;
if (isNull(exp))
{
alert("is null");
}
JavaScript中沒有isNull這個函式。
以下是正確的用法:
var exp = null;
if (!exp && typeof(exp)!="undefined" && exp!=0)
{
alert("is null");
}
儘管如此,我們在DOM應用中,一般只需要用(!exp)來判斷就可以了,因為DOM應用中,可能返回null,可能返回undefined,如果具體判斷null還是undefined會使程式過於複雜。