关于truthy 和 falsy
一,强制类型转换
JavaScript 在需要用到布尔类型值的上下文中使用强制类型转换(Type Conversion )将值转换为布尔值,比如:在条件语句或者循环语句中
一,truthy
在javascript中,Truthy (真值)指的是在Boolean上下文中转换后的值为真的值。所有值都是真值,除非它们被定义为falsy(即除了 false
,0
,""
,null
,undefined
和 NaN
外)。
JavaScript中truthy值的例子 (通过 if 代码段将truthy值转换为true)
if (true) if ({}) if ([]) if (42) if ("foo") if (new Date()) if (-42) if (3.14) if (-3.14) if (Infinity) if (-Infinity)
二,falsy
falsy(虚值)是在 Boolean上下文中已认定可转换为‘假‘的值.
JavaScript中falsy值的例子 (通过 if 代码段将falsy值转换为false):
1 if (false) 2 if (null) 3 if (undefined) 4 if (0) 5 if (NaN) 6 if ('') 7 if ("") 8 if (document.all)