背景:最近在系统学习前端vue,然后在官方文档上看到这么一句:truthy 不是 true
,纳尼。。。必须要学习
学习:
今天学习记录一波js中的真值的规范理解,不管你是前端还是全栈,都应该对下面的这个JavaScript真值进行系统的get:
在 JavaScript 中,**truthy**(真值)指的是在布尔值上下文中,转换后的值为真的值。所有值都是真值,除非它们被定义为 假值(即除 false、0、""、null、undefined 和 NaN 以外皆为真值)。
JavaScript 在布尔值上下文中使用强制类型转换,
举例:
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)
上面这些if()里面的都是真值,涨知识~~~