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

Javascript Truthy/Falsy操作

夏立果
2023-03-14

我有一个关于javascript truthy/falsy的问题

据我所知,任何包括负数在内的非零数都是真实的。但如果是这样那为什么

-1 == true //returns false

但也

-1 == false //returns false

共有3个答案

姚星河
2023-03-14

任何非零数计算为true,零计算为false。这不等于等于真/假。

执行下面的代码(并用不同的值替换-1)可以帮助您理解这一点:

if (-1) {
    true;
} else {
    false;
}
长孙文栋
2023-03-14

不,布尔值要么是0(false),要么是1(true)。

这里有一个例子:

console.log(0 == false); // returns true => 0 is equivalent to false
console.log(1 == true); // returns true => 1 is equivalent to true
console.log(-1 == false); // returns false => -1 is not equivalent to false
console.log(-1 == true); // returns false => -1 is not equivalent to true
黄景胜
2023-03-14

对数值操作数和布尔操作数使用==运算符时,首先将布尔操作数转换为数字,并将结果与数值操作数进行比较。这使得你的陈述相当于:

-1 == Number(true)

-1 == Number(false)

反过来是

-1 == 1

-1 == 0

这说明了为什么您总是看到false结果。如果强制对数值操作数进行转换,则会得到所需的结果:

Boolean(-1) == true //true
 类似资料:
  • 一套简单实用的 API 开发框架,将 falcon 的高性能与 swagger 和 yaml 的易用性结合。 目前还在开发阶段,但基本的功能已经完成,具体见 GitHub。 运行效果

  • 除了明确的 true 和 false 两个 boolean 类型外,JavaScript 可以在需要用到布尔类型值的上下文中使用强制类型转换将值转换为布尔值。 1. 慕课解释 Truthy 指的是转换后的值为’真‘的值,Falsy 是在 Boolean 上下文中已认定可转换为‘假‘的值。 变量类型 Truthy Falsy boolean true false string 非空字符串 ‘’ nu

  • 有人能使用下面的示例数据解释JavaScript Truthy和Falsy吗?我读过其他线程,但仍然感到困惑。 根据我的理解,我认为var a=1 是唯一的真理,其余的都是虚假的-这是正确的吗?

  • 我刚刚了解到python中有truthy和falsy值,它们不同于正常的和。 有人能深入解释什么是真实和虚假的价值观吗?我应该在哪里使用它们?truthy和值与falsy和值之间有什么区别?

  • 我在这个问题上也是空白。如果有人能帮助我理解为什么我的代码没有打印预期的输出,而不是提供答案,我将不胜感激: 预期产出: 实际输出是什么: 请帮助我理解我做错了什么。我认为函数需要测试参数的实际真值,但我不明白我遗漏了什么。

  • HyperLogLog主要解决大数据应用中的非精确计数(可能多也可能少,但是会在一个合理的范围)操作,它可以接受多个元素作为输入,并给出输入元素的基数估算值,基数指的是集合中不同元素的数量。比如 {‘apple’, ‘banana’, ‘cherry’, ‘banana’, ‘apple’} 的基数就是 3 。 HyperLogLog 的优点是,即使输入元素的数量或者体积非常非常大,计算基数所需的