在JavaScript中,如何以简单的方式将“ a”与“ b”,“ c”等进行比较?

时间:2018-08-23 22:17:53

标签: javascript if-statement ternary-operator

目前,我唯一知道做标题说明的方法是编写以下内容:

var a = 3, b = 5, c = 3;
if (a === b && a === c) {
  // code
}

或使用三元运算符:

(a === b && a === c) ? /* code */ : /* else */

是否可以同时针对ab检查c?也许是这样的:

if (a === (b && c)) {
  // code
}

显然这不能按预期工作,这就是为什么我要问这个问题。任何帮助表示赞赏。

这不是其他2的重复-这两个正在使用OR运算符。我在问AND运算符。

3 个答案:

答案 0 :(得分:1)

不幸的是,没有。那就是你所拥有的。除非将其转换为数组并进行循环测试。

答案 1 :(得分:1)

对于像这样的简单情况?当然不。但是,如果构建数组,可以使用一些方便的小技巧。例如:

var my_array = [3, 5, 3];
if(my_array.every(function(el) {return el == my_array[0];})) {
    // code
}

答案 2 :(得分:0)

如果a,b和c都是数字,那么您可以做简单的数学运算来检查b和c与a的奇偶性。

只需将b和c相加,除以2即可得到平均值,然后将其与a进行比较。

var a = 3, b = 5, c = 3;
  a === (b + c)/2 
  ? console.log('yes')
  : console.log('no') // gives "no"
  
  
var a = 3, b = 3, c = 3;
  a === (b + c)/2 
  ? console.log('yes')
  : console.log('no') // gives "yes"