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

转载 2017年01月03日 14:30:51

//如果逻辑对象无初始值或者其值为 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:

<SPAN style="FONT-SIZE: small">var tmp = undefined;   
  1. if (typeof(tmp) == "undefined"){   
  2.     alert("undefined");   
  3. }</SPAN>   
[js] view plain copy
  1. <span style="font-size:13px;">var tmp = undefined;  
  2. if (typeof(tmp) == "undefined"){  
  3.     alert("undefined");  
  4. }</span>   

 

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

 

2.判断null:  (注意:为避免出错,最安全的做法是先判断null)

<SPAN style="FONT-SIZE: small">var tmp = null;   
  1. if (!tmp && typeof(tmp)!="undefined" && tmp!=0){   
  2.     alert("null");   
  3. } </SPAN>  
[java] view plain copy
  1. <span style="font-size:13px;">var tmp = null;  
  2. if (!tmp && typeof(tmp)!="undefined" && tmp!=0){  
  3.     alert("null");  
  4. } </span>  

 

3.判断NaN:

<SPAN style="FONT-SIZE: small">var tmp = 0/0;   
  1. if(isNaN(tmp)){   
  2.     alert("NaN");   
  3. }</SPAN>  
[js] view plain copy
  1. <span style="font-size:13px;">var tmp = 0/0;  
  2. if(isNaN(tmp)){  
  3.     alert("NaN");  
  4. }</span>  

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

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

 

4.判断undefined和null:

<SPAN style="FONT-SIZE: small">var tmp = undefined;   
  1. if (tmp== undefined)   
  2. {   
  3.     alert("null or undefined");   
  4. } </SPAN>  
[js] view plain copy
  1. <span style="font-size:13px;">var tmp = undefined;  
  2. if (tmp== undefined)  
  3. {  
  4.     alert("null or undefined");  
  5. } </span>  

 <SPAN style="FONT-SIZE: small">var tmp = undefined;   

  1. if (tmp== null)   
  2. {   
  3.     alert("null or undefined");   
  4. }</SPAN>   
[js] view plain copy
  1. <span style="font-size:13px;">var tmp = undefined;  
  2. if (tmp== null)  
  3. {  
  4.     alert("null or undefined");  
  5. }</span>   

说明:null==undefined

<!--EndFragment-->

 

 

5.判断undefined、null与NaN:

<SPAN style="FONT-SIZE: small">var tmp = null;   
  1. if (!tmp)   
  2. {   
  3.     alert("null or undefined or NaN");   
  4. }</SPAN>   
[java] view plain copy
  1. <span style="font-size:13px;">var tmp = null;  
  2. if (!tmp)  
  3. {  
  4.     alert("null or undefined or NaN");  
  5. }</span>   

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

转自:http://blog.csdn.net/sunny243788557/article/details/8106265

 

0

js 中false 情况

下面的值为false: false null undefined ""  即空字符串 0 NaN // test var a = NaN; console.log(a || 1);...
  • baojie1022
  • baojie1022
  • 2017年07月28日 09:44
  • 92

Faster R-CNN论文笔记

原文:http://www.92to.com/bangong/2016/10-30/12048568.html 在介绍Faster R-CNN之前,先来介绍一些前验知识,为Faster R-CNN做...
  • u013177494
  • u013177494
  • 2017年07月03日 19:07
  • 209

js条件语句false情况

1.下面列出的值被当作假(false): ①false ②null ③undefined ④空字符串'' ⑤数字0 ⑥数字NaN 其他所有的值都被...
  • u014737974
  • u014737974
  • 2016年01月06日 15:34
  • 163

JS中为false的几种情况

下面的值为false: false null undefined ""  即空字符串 0 NaN ------------来源 JavaScript语言精粹 P12...
  • peade
  • peade
  • 2017年01月25日 22:16
  • 2129

false 的几种情况

1、空字符串 2、0 3、false本身 4、undefined 5、null 6、NaN demo: DEMO - Lik if(''){ ...
  • github_39365750
  • github_39365750
  • 2017年07月20日 12:51
  • 70

js内存泄漏常见的四种情况

意外的全局变量 js中如果不用 var 声明变量,该变量将被视为 window 对象(全局对象)的属性,也就是全局变量. function foo(arg) { bar = "this...
  • z_Sherry
  • z_Sherry
  • 2016年11月26日 17:45
  • 551

js中 break 和 continue 的区别

continue和break有点类似,区别在于continue只是终止本次循环,接着还执行下一次循环 break用于完全结束一个循环,跳出循环体执行循环后面的语句。 var arrnum ...
  • AsheAndWine
  • AsheAndWine
  • 2018年01月05日 11:45
  • 50

布尔值为false的5种情况

Title /* * 以下是布尔值为false的清空,其他则一律返回true * 数字0、特殊值的 null、NaN、undefined、字符...
  • super_yang_android
  • super_yang_android
  • 2016年12月28日 11:33
  • 989

解决VS2008读execl出现:服务器出现意外情况 问题

程序读写会占用excel的com端口,所以要保证调用时这个端口是开放的。           execl-》点击文件》选项》弹出excel选项卡》点击管理旁边的下拉菜单,选择com加载项,把祈福阅读...
  • yu2yu3yu2
  • yu2yu3yu2
  • 2016年10月27日 15:20
  • 2627

PHP之TRUE与FALSE总结

以下代码主要用于测试PHP中进行条件判断时各种情况。
  • taotaoyouarebaby
  • taotaoyouarebaby
  • 2012年12月07日 16:13
  • 1058
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:js中基本上8中情况的逻辑false情况
举报原因:
原因补充:

(最多只允许输入30个字)