β

javascript中的falsy

Just Pic 11 阅读
 

javascript包括6种原始类型:object、number、string、boolean、null、undefined。
引用类型包括:Function、Array、Date、…其他自定义类型
除了boolean值true、false外,所有类型的javascript值均可用于逻辑判断

6种falsy:false、0、”“、null、undefined、NaN

判断比较:
一.所有的falsy值,当进行逻辑判断时均为false
二.其余所有的值均为Truthy,当进行逻辑判断时均为true。值得注意的是,Infinity、空数组、“0”都是Truthy值。
三.falsy值之间的比较
1.false、0、空串是可以互等的:
false == 0 //true
false == “” //true
0 == “” //true
2.null和undefined可以互等,但是不与其他几种相等:
null == false;//false null == null://true nudefined == undefined //true nudefined == null; //true
3.NaN,不与其他任何值相等,甚至与自己都不相等 NaN == null; //false NaN == NaN;//false

四.空数组的比较 :

if ( [] ) {
// 这里的代码将会执行
}
if ( [] == true ) {
// 这里的代码不会执行
}
if ( [] == false ) {
// 这里的代码将会执行
}

truthy与true不一样,隐含有true属性的变量不可以认为它是true,它不是boolean类型

 
作者:Just Pic
原文地址:javascript中的falsy, 感谢原作者分享。

发表评论