码迷,mamicode.com
首页 > 编程语言 > 详细

JavaScript中值的真真假假(true and false)

时间:2014-08-19 23:45:35      阅读:258      评论:0      收藏:0      [点我收藏+]

标签:blog   java   使用   os   io   strong   for   ar   

值为flase的有:

false
0  
"" //空串
null
undefined
NaN 

除了以上的之外的都是ture,包括"0" (zero in quotes), "false" (false in quotes) , empty functions, [](空数组), and {}(empty objects),都是为true

var a = !!(0);    // false
var b = !!("0");  // true

为false的类型之间的比较:

false0 (zero), and "" (empty string)这三个都是"=="相等的

var c = (false == 0); // true
var d = (false == ""); // true  
var e = (0 == ""); // true  

null 和 undefined 除了他们自己本身相比较是"=="相等的,与其他的值相比较是不相等的

var f = (null == false); // false  
var g = (null == null); // true  
var h = (undefined == undefined); // true
var i = (undefined == null); // true  

还有一个比较特殊的NaN,他和任何一个值都不相等

var j = (NaN == null); // false  
var k = (NaN == NaN); // false 

typeof(NaN)返回的“number”,一般我们通过isNaN()来判断一个值是不是NaN

上面的情况,如果使用“===”严格全等和“!==”严格不等,情况又不太一样了,这两个比较的是包括了类型和值

var l = (false == 0); // true
var m = (false === 0); // false

附上两适用的方法:

1.检查是否位空数组

var n =  ([].length == 0)  // ture

2.检查是否位空对象

var obj = {};
for (var i in obj){
    if(obj[i]) {
        return true;
    } else {
        return false;
    }
}

JavaScript中值的真真假假(true and false),布布扣,bubuko.com

JavaScript中值的真真假假(true and false)

标签:blog   java   使用   os   io   strong   for   ar   

原文地址:http://www.cnblogs.com/h07061108/p/js_true_false.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
分享档案
周排行
mamicode.com排行更多图片
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!