当前位置: 首页 > 知识库问答 >
问题:

JavaScript中的所有Falsey值

臧翰采
2023-03-14

在JavaScript中,哪些值是“Falsey”,这意味着它们在表达式中被评估为false,比如if(value)value?!值

对堆栈上的假值的用途进行了一些讨论

我在MDN JavaScript参考中找不到任何完整的列表,我惊讶地发现,在寻找JavaScript中虚假值的完整、权威列表时,最重要的结果是博客文章,其中一些文章有明显的遗漏(例如,NaN),并且没有一篇具有类似堆栈的格式

共有3个答案

漆雕欣德
2023-03-14

只需添加到@user568458的falsy值列表中:

>

  • 除整数0外,十进制数0.0、0.00或任何此类零数值也是一个伪值。

    var myNum = 0.0;
    if(myNum){
        console.log('I am a truthy value');
    }
    else {
        console.log('I am a falsy value');
    }
    

    以上代码片段打印我是一个虚假的值

    类似地,数字0的十六进制表示形式也是一个falsy值,如下面的代码段所示:

    var myNum = 0x0; //hex representation of 0
    if(myNum){
        console.log('I am a truthy value');
    }   
    else {
        console.log('I am a falsy value');
    }
    

    上面的代码片段再次打印我是一个伪值

  • 羊刚捷
    2023-03-14

    不要忘记非空字符串“false”,其计算结果为true

    慕容齐智
    2023-03-14
    • false

    “Falsey”仅仅意味着JavaScript的内部ToBoolean函数返回false<代码>ToBoolean参考文件!值如果(值)。这是它的官方规范(2020年工作草案)(自1997年第一个ECMAscript规范以来唯一的变化是添加了ES6符号,这些符号总是真实的,BigInt,如上所述:

     类似资料:
    • 问题内容: 什么是JavaScript的是“falsey”的值,这意味着它们评估为假像表情if(value),value ?和!value? 问题答案: JavaScript中的假值 和其他形式的数字等的零,和(信贷RBT为十六进制形式) - `”“,’‘ 和 ```-长度的字符串0 null undefined NaN document.all (仅在HTML浏览器中) 这是一个奇怪的。是一个假

    • 问题内容: 我遵循了有关创建JavaScript秒表,并试图将其扩展为可与多个秒表(一个类的多个实例)一起使用。我遇到的问题是,当我试图在时钟滴答声中显示当前值时,我需要使用“this”对类实例进行硬编码,这是行不通的(在我使用console.log的那一行中)。我已将代码缩减到最低限度以尝试理解这一方面,并​​粘贴了以下内容: 我认为以下链接描述了我的问题,但我对它的理解不足以在此处应用。问题是

    • 问题内容: 长话短说:我需要使用PHP风格的getter,但要使用JavaScript。 我的JavaScript仅在Firefox中运行,因此我可以使用Mozilla特定的JS。 我能找到的制作JS吸气剂的唯一方法是指定其名称,但我想为所有可能的名称定义一个吸气剂。我不确定这是否可行,但我非常想知道。 问题答案: 可以做到!我很高兴这个存在!这里给出一个答案:是否有与python的__getat

    • 我想从数据数组中获得所有名称。有没有什么方法可以不用迭代器来做呢?

    • 我正在寻找在javascript或jquery中更改字符串中所有字符的最佳和最快的方法 例如: abcdefghijklmnopqrstuvwxyz==>aximi、fixi、fixi、fixi、fixi、fixi、fixi、fixi、fixi、fixi、fixi、fix 或 abcdefghijklmnopqrstuvwxyz==>å¡Á¡ãghïjklmñãqr§µvwx¡ãz ...。 输出

    • 问题内容: 我有一个如下的JSON数组: 我不知道该数组中确实存在哪些键。我想从数组中获取所有现有键。 应该可能是这样的: 请告诉我获取Json数组中所有现有键的方法或方法。 问候 问题答案: 试试这个: 我还对您当前的代码进行了一些修改(例如缓存)。