Javascript 如何说。(数组[0]是否等于第二个数组[0]或[1]或[2])

Javascript 如何说。(数组[0]是否等于第二个数组[0]或[1]或[2]),javascript,if-statement,Javascript,If Statement,嘿,这是我写的一个例子(用javascript) 我想精简一下,因为我有12个这样的函数,我的js文件超过700行 我想说:如果(animalNums[0]。animal.textContent==findArray[0]。textContent | | findArray[1]。textContent | | findArray[2]。textContent) 在一行中,而不是在其他三行中。 有人能帮我吗?我尝试了一些不同的方法,但都没有成功。这里有很多重复的代码,不管你的条件值是什么,其中很

嘿,这是我写的一个例子(用javascript)

我想精简一下,因为我有12个这样的函数,我的js文件超过700行

我想说:如果(animalNums[0]。animal.textContent==findArray[0]。textContent | | findArray[1]。textContent | | findArray[2]。textContent)

在一行中,而不是在其他三行中。
有人能帮我吗?我尝试了一些不同的方法,但都没有成功。

这里有很多重复的代码,不管你的条件值是什么,其中很多都会被执行。在我看来,这也是同样的道理:

function checkCardOne() {
  if (
    findArray
      .slice(0, 3)
      .some(elt => elt.div.textContent === animalNums[0].animal.textContent)
  ) {
    score += 1;
  } else {
    score -= 1;
  }

  animalNums[0].animal.style.display = "block";
  animalNums[0].animal.classList.add("animate");
  setTimeout(function() {
    animalNums[0].animal.classList.remove("animate");
  }, 1001);
  document.getElementById("scoreP").innerHTML = `Score: ${score}`;
}

我不知道
findArray
是否有3个以上的元素,如果没有,那么你可以去掉
.slice(0,3)

这里有相当多的重复代码,不管你的条件值是什么,很多重复代码都会被执行。在我看来,这也是同样的道理:

function checkCardOne() {
  if (
    findArray
      .slice(0, 3)
      .some(elt => elt.div.textContent === animalNums[0].animal.textContent)
  ) {
    score += 1;
  } else {
    score -= 1;
  }

  animalNums[0].animal.style.display = "block";
  animalNums[0].animal.classList.add("animate");
  setTimeout(function() {
    animalNums[0].animal.classList.remove("animate");
  }, 1001);
  document.getElementById("scoreP").innerHTML = `Score: ${score}`;
}

我不知道
findArray
是否有3个以上的元素,如果没有,那么您可以取出
.slice(0,3)

非常感谢您这帮了大忙!非常感谢这帮了大忙!