【问题标题】:Easiest way of checking the truthy of a value in javascript? [duplicate]检查javascript中值的真实性的最简单方法是什么? [复制]
【发布时间】:2019-07-24 12:35:30
【问题描述】:

在使用 javascript 编程时,我在某些情况下遇到了一个条件,想知道哪些值会通过该条件(如果它是真实的)。

我想出的解决方案是在 chrome 中打开控制台并输入if(foo) {true},如果foo 为真,则返回true,否则返回false

一个例子是当我有一些表达式 (foo) 不会只返回 true/false 值时。在if 内部,它可以根据输入返回很多东西(有时是字符串、数字或NaN)。

但我觉得为此写 if 太过分了。

有没有最简单的方法来检查 javascript 中值的真实性?

编辑:

我正在寻找检查值真实性的最简单方法,而不仅仅是如何检查,正如我在问题中所说,我已经使用if(foo) {true} 进行检查,但我正在寻找一种最简单的方法

【问题讨论】:

  • !!something 执行的转换与 if 语句执行的转换相同。
  • const thruthness = !!yourVariable,或者更好的是const thruthness = Boolean(yourVariableOrExpression)
  • 嗯,成功了,谢谢大家。如果您发布答案,我会接受它
  • null, undefined, false, 0, NaN"" (emty string) 是假的,一切 else 是真的;像单个空格 " " 或任何这些值作为字符串等。

标签: javascript


【解决方案1】:

我会使用 ternary 运算符来简写 if 语句。

结果是这样的:

const foo = true;
console.log(foo ? 'truthy' : 'falsy'); // returns truthy

【讨论】:

  • 如果您使用三进制,则无需将其转换为布尔值,这会自动发生。
  • @ritaj,正确。编辑了我的答案。
猜你喜欢
  • 2011-10-19
  • 2013-01-08
  • 1970-01-01
  • 1970-01-01
  • 2017-05-01
  • 2014-02-24
  • 2013-08-19
  • 2015-01-11
  • 1970-01-01
相关资源
最近更新 更多