JS 中判斷空值 undefined 和 null
阿新 • • 發佈:2018-12-31
目錄
正文
1.JS 中如何判斷 undefined
JavaScript 中有兩個特殊資料型別:undefined 和 null,下節介紹了 null 的判斷,下面談談 undefined 的判斷。
以下是不正確的用法:
var exp = undefined;
if (exp == undefined)
{
alert("undefined");
}
exp 為 null 時,也會得到與 undefined 相同的結果,雖然 null 和 undefined 不一樣。注意:要同時判斷 undefined 和 null 時可使用本法。
var exp = undefined; if (typeof(exp) == undefined) { alert("undefined"); }
以下是正確的用法:
var exp = undefined;
if (typeof(exp) == "undefined")
{
alert("undefined");
}
2.JS 中如何判斷 null
以下是不正確的用法:
var exp = null; if (exp == null) { alert(“is null”); } exp 為 undefined 時,也會得到與 null 相同的結果,雖然 null 和 undefined 不一樣。注意:要同時判斷 null 和 undefined 時可使用本法。 var exp = null; if (!exp) { alert(“is null”); } 如果 exp 為 undefined 或者數字零,也會得到與 null 相同的結果,雖然 null 和二者不一樣。注意:要同時判斷 null、undefined 和數字零時可使用本法。 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”);
}
更簡單的正確的方法:
var exp = null;
if (exp === null)
{
alert("is null");
}
儘管如此,我們在 DOM 應用中,一般只需要用 (!exp) 來判斷就可以了,因為 DOM 應用中,可能返回 null,可能返回 undefined,如果具體判斷 null 還是 undefined 會使程式過於複雜。