您的位置:首页 > Web前端 > JavaScript

Js中判断一个值为null

2015-07-30 11:17 615 查看
以下是不正确的方法:

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,或数字零,或 false,也会得到与 null 相同的结果,虽然 null 和二者不一样。
注意:要同时判断 null、undefined、数字零、false 时可使用本法。

var exp = null;
if (typeof exp == "null")
{
alert("is null");
}
为了向下兼容,exp 为 null 时,typeof null 总返回 object,所以不能这样判断。

var exp = null;
if (isNull(exp))
{
alert("is null");
}
VBScript 中有 IsNull 这个函数,但 JavaScript 中没有。

--------------------------------------------------------------------------------

以下是正确的方法:

var exp = null;
if (!exp && typeof exp != "undefined" && exp != 0)
{
alert("is null");
}
typeof exp != "undefined" 排除了 undefined;
exp != 0 排除了数字零和 false。

更简单的正确的方法:

var exp = null;
if (exp === null)
{
alert("is null");
}

--------------------------------------------------------------------------------

尽管如此,我们在 DOM 应用中,一般只需要用 (!exp) 来判断就可以了,因为DOM 应用中,可能返回 null,可能返回 undefined,如果具体判断 null 还是undefined 会使程序过于复杂。

1.判断undefined:

Js代码


<span style="font-size: small;">var tmp = undefined;

if (typeof(tmp) == "undefined"){

alert("undefined");

}</span>

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

2.判断null:

Java代码


<span style="font-size: small;">var tmp = null;

if (!tmp && typeof(tmp)!="undefined" && tmp!=0){

alert("null");

} </span>

3.判断NaN:

Js代码


<span style="font-size: small;">var tmp = 0/0;

if(isNaN(tmp)){

alert("NaN");

}</span>

说明:如果把 NaN 与任何值(包括其自身)相比得到的结果均是 false,所以要判断某个值是否是 NaN,不能使用 == 或 === 运算符。

提示:isNaN() 函数通常用于检测 parseFloat() 和 parseInt() 的结果,以判断它们表示的是否是合法的数字。当然也可以用 isNaN() 函数来检测算数错误,比如用 0 作除数的情况。

4.判断undefined和null:

Js代码


<span style="font-size: small;">var tmp = undefined;

if (tmp== undefined)

{

alert("null or undefined");

} </span>

Js代码


<span style="font-size: small;">var tmp = undefined;

if (tmp== null)

{

alert("null or undefined");

}</span>

说明:null==undefined

<!--EndFragment-->

5.判断undefined、null与NaN:

Java代码


<span style="font-size: small;">var tmp = null;

if (!tmp)

{

alert("null or undefined or NaN");

}</span>

提示:一般不那么区分就使用这个足够。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: