51dev.com IT技术开发者社区

51dev.com 技术开发者社区

js中基本上8中情况的逻辑false情况

JavascriptIT技术学习阅读(28)2018-11-07 收藏0次评论

 //如果逻辑对象无初始值或者其值为 0、-0、null、""、false、undefined 或者 NaN,那么对象的值为 false。否则,其值为 true(即使当自变量为字符串 "false" 时)!
        document.write((new Boolean())+"<br />");
        document.write((new Boolean(""))+"<br />");
        document.write((new Boolean(0))+"<br />");
        document.write((new Boolean(-0))+"<br />");
        document.write((new Boolean(null))+"<br />");
        document.write((new Boolean(undefined))+"<br />");
        document.write((new Boolean(false))+"<br />");
        document.write((new Boolean(NaN))+"<br />");

以下为判断NaN,undefined,null的情况:

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.判断undefined和null:
 

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

5.判断undefined、null与NaN:

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

 提示:一般不那么区分就使用这个足够。

以上就是js中基本上8中情况的逻辑false情况的全部内容,请多关注【51DEV】IT技术开发者社区。