小tips:JS的Truthy和Falsy(真值与假值)

前言

Truthy 不等于 ture,他是指是在Boolean上下文中转换后的值为真的值。我的理解是,在javascript中所有表达式为true的值。同理Falsy指的是在javascript中所有表达式为false的值。
所有值都是真值,除非它们被定义为 falsy (即, 除了false,0,“”,null,undefined和NaN 外)。

 Truthy

JavaScript中的真值示例如下(将被转换为true类型,if 后的代码段将被执行):

if (true)
if ({})
if ([])
if (42)
if ("foo")
if (new Date())
if (-42)
if (3.14)
if (-3.14)
if (Infinity)
if (-Infinity)

Falsy

JavaScript中falsy值的例子 (将falsy值转换为false):

if (false)
if (null)
if (undefined)
if (0)
if (NaN)
if ('')
if ("")

falsy有时写作falsey,即使在英语中,通常将一个单词转换成形容词时,会去掉末尾的字母e,添加字母y。

posted @ 2018-12-05 09:23  风雨后见彩虹  阅读(734)  评论(0编辑  收藏  举报