Truthy、Falsy
Truthy、Falsy
Falsy

其实可以认定为 Truthy是对的 Falsy是错误的
在 JavaScript 中只有 8 个 falsy 值。
这意味着当 JavaScript 期望一个布尔值,并被给与下面值中的一个时,它总是会被当做 false。
false | false 关键字 | |
0 | 数值 zero | |
-0 | 数值 负 zero | |
0n | ||
"", '', `` | 这是一个空字符串 (字符串的长度为零). JavaScript 中的字符串可用双引号 "", 单引号 '', 或 模板字面量 `` 定义。 | |
null - 缺少值 | ||
undefined - 原始值 | ||
NaN - 非数值 |
与falsy值之间比较
关于falsy值之间的比较,分为以下几种情况
1.false、0、空串三者是可以互等的
var c = (false == 0); // true var d = (false == ""); // true var e = (0 == ""); // true
2.null和undefined可以互等,但是不与其他几种相等
var f = (null == false); // false var g = (null == null); // true var h = (undefined == undefined); // true var i = (undefined == null); // true
3.NaN,不与其他任何值相等,甚至与自己都不等(//六亲不认,失去自我)