JavaScript - 检查至少一个变量是否为true

4

如何检查一组变量中是否至少有一个为真。 例如:

var v1 = false;
var v2 = false;
var v3 = false;
var v4 = false;
var v5 = false;

假设我有5个按钮,当我点击button1等按钮时,变量v1会发生变化。现在假设我点击了button4,v4变成了true。我该如何检查这5个变量中是否至少有一个是true的呢?类似于下面的代码:

if(1/5 variables is true) {do something}

我应该创建一个数组或者其他什么东西吗?


6
v1 || v2 || v3 || v4 || v5 - Rayon
1
将它们放入一个数组中,并在其上运行.some方法。 - Ozan
为什么不使用数组来存储这些值? - Nina Scholz
4个回答

12
if([v1, v2, v3, v4, v5].some(item => item)) {
    //code
}

8
这是条件性的“或”操作:

if (v1 || v2 || v3 || v4 || v5) { do something }

这是最简单的解决办法。但是.some()也是一种更棒的方法。看看这个。
如果有100个元素,你不能写成(v1 || v2 ...|| v100),所以使用.some()将会有所帮助。
示例:
function isTrue(element, index, array) {
  return element;
}
    
if ([2, 5, 8, 1, 4].some(isTrue)) { do something; }

@Werl_:请检查答案。 - user2736738

1
方法1: 您可以使用逗号将多个变量应用于单个变量,但如果您确实需要分隔,则应使用该分隔符。
    var v1,v2,v3,v4,v5 = false;

    if (v1 || v2 || v3 || v4 || v5) 
    {
      //code to be executed
    }

0

在你的if语句中编写或条件。

  if( v1 || v2 || v3 || v4 || v5) 
{ 
// Do something
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接