javascript - 如何在 JS 中以干净的方式检查变量是否等于两个值之一

标签 javascript if-statement

检查是否x变量等于 1 或 2,我通常会这样做:

if (x === 1 || x === 2){
   // ....
}

但这在某些情况下可能会变得非常麻烦。

Edit :I'm working right now on this and writing the fonction name every time i think can be done in a cleaner manner:

if (
      this.getNotificationStatus() === 'denied' ||
      this.getNotificationStatus() === 'blocked'
    )

还有其他更简单的方式来写这个吗?

谢谢

最佳答案

你可以这样做:

if ([1, 2].includes(x)) {
  // ....
}

或者:

if ([1, 2].indexOf(x) > -1) {
  // ....
}

或者:

switch (x) {
  case 1:
  case 2:
    // ....
    break;
  default:
}

不过,我认为它们并不比您的解决方案“更轻”。

关于javascript - 如何在 JS 中以干净的方式检查变量是否等于两个值之一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60001135/

相关文章:

javascript - 创建新数组的函数产生未定义

javascript - 在 if/else 语句后使用 for 循环

javascript - 工厂函数不返回数据

javascript - 如何在reactjs中使用this.refs从输入类型获取值?

JavaScript 代码加密

javascript - 正则表达式仅包含二进制数且不超过 8 位数字

java - 如果否则-如果不工作

javascript - 使用附加 SDK 在 Firefox 中自定义上下文菜单?

java - 如何删除这些 if 语句之一并缩短代码?

C++ 使用 if 语句调用父类(super class)