美文网首页
JS内的Truthy值和Falsy值

JS内的Truthy值和Falsy值

作者: 你单排吧 | 来源:发表于2020-06-21 14:46 被阅读0次

跟据MDN的术语表解释如下:

在 JavaScript 中,Truthy (真值)指的是在 布尔值 上下文中转换后的值为真的值。所有值都是真值,除非它们被定义为 falsy (即除了 false,0,"",null,undefined 和 NaN 外)。

JavaScript 在布尔值上下文中使用强制类型转换(coercion)。

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(虚值)是在 Boolean 上下文中已认定可转换为‘假‘的值.

JavaScript 在需要用到布尔类型值的上下文中使用强制类型转换(Type Conversion )将值转换为布尔值,比如:在条件语句或者循环语句中

例子节
JavaScript中falsy值的例子 (通过 if 代码段将falsy值转换为false):

if (false)
if (null)
if (undefined)
if (0)
if (NaN)
if ('')
if ("")
if (document.all)

document.all 在过去被用于浏览器检测,是HTML规范在此定义了故意与ECMAScript标准相违背的(译者注:document.all虽然是一个对象,但其转换为boolean类型是false),以保持与历史代码的兼容性 (if (document.all) { // Internet Explorer code here } 或使用 document.all 而不先检查它的存在: document.all.foo).

falsy有时写作falsey,即使在英语中,通常将一个单词转换成形容词时,会去掉末尾的字母e,添加字母y。(比如:noise => noisy, ice => icy, shine => shiny)

本文非原创,转自 如何理解JS内的Truthy值和Falsy值

相关文章

  • JS内的Truthy值和Falsy值

    跟据MDN的术语表解释如下: 在 JavaScript 中,Truthy (真值)指的是在 布尔值 上下文中转换后...

  • 逻辑运算

    描述 说明 如果一个值可以被转换为true,那么这个值就是所谓的[truthy]只要不是falsy就是truthy...

  • falsy.truthy.assert

    truthy1 falsy0 两个感叹号!!表示把任意值改成BOOLZHI falsy:number(0 nan)...

  • js中的【Truthy】和【Falsy】|(真值与假值)

    Truthy 不等于 ture,他是指是在Boolean上下文中转换后的值为真的值。我的理解是,在javascri...

  • JS 里的数据类型转换

    JS中falsy值的例子 (将falsy值转换为false) 转为number 垃圾回收 如果一个对象没有被引用,...

  • falsy && truthy

    逻辑运算 &&1 && 2 是 true 2 是true 或 => 取第一个真值,如果第一个是真值返回真,如果都是...

  • falsy值

    项目中 会出现很多 后端返回的 0 或者1undefined null之类的判断0 有时候也会作为一个正常的值存...

  • JavaScript 中的 Truthy 和 Falsy

    原文地址:https://alphahinex.github.io/2021/07/25/truthy-and-f...

  • Design & Coed 11:过滤数组假值

    过滤数组假值 Falsy Bouncer 过滤数组假值 (真假美猴王) 删除数组中的所有假值。 在JavaScri...

  • JS对象基本用法

    与JS相关的七种数据类型以及五个falsy值 七种数据类型 : number、string、bool、symbol...

网友评论

      本文标题:JS内的Truthy值和Falsy值

      本文链接:https://www.haomeiwen.com/subject/hnqaxktx.html