【问题标题】:Javascript: "a === b or c"? [duplicate]Javascript:“a === b 或 c”? [复制]
【发布时间】:2013-11-30 08:58:00
【问题描述】:

我想检查变量a 是否等于bc。 我当然知道这样做的明确方法;

a === b || a === c

但是在 Javascript 中是否有一种简写方式?我的意思是,例如,

a === (b || c)

有效吗。

我在这里发现了类似的问题

但他们在谈论 PHP。

【问题讨论】:

  • 仅供参考,这个问题已经是asked today(也已关闭)。
  • 哦,谢谢,这也很有帮助
  • 哎呀,还是谢谢 :)
  • 你问的内容怎么不短?

标签: javascript logical-operators


【解决方案1】:

我认为在常规 JavaScript 中没有更短或更简洁的方法。

另一种方法是做一个三进制,但这可以说是可读性差得多,所以我会坚持你的表达方式。

三元:

a === b ? true : a === c

建议,就像你的问题一样

a === b || a === c

【讨论】:

  • +1 正确,除非您定义和重用一个函数,否则 JavaScript 中没有更简洁的合理方法。 (我认为您的意思是“表达”而不是“扩展”......?)
  • @ChrisAlexander,欢迎来到该网站。很好的第一个答案。
【解决方案2】:

最简单的方法是你描述的a===b||a===c所有其他方法只能扩展你的代码。因此,请使用 a===b||a===c 而不是使用其他任何 .

【讨论】:

    【解决方案3】:
    ((a === (b||c))
    

    这是最短路径

    【讨论】:

    • 如果不等价,Short 是没有用的。以a = falseb = falsec = true 为例。那么a === (b || c) 为假,而a === b || a === c 为真。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-06
    • 1970-01-01
    • 2020-07-15
    • 1970-01-01
    • 2020-04-02
    • 2019-11-25
    • 2011-08-19
    相关资源
    最近更新 更多