替代 Javascript 中 if 块中的多个 or 语句

Alternative to multiple or statements in an if block in Javascript

我必须检查

if(x == "An" || x == "Apple" || x == "A" || x == "Day" || x == "Keeps" || x == "The"....and so on){
      return true;
}
else{
     return false; 
}

对于大量 || 条件,是否有更好的方法来编写 if 语句?

您可以将值存储在数组中,然后使用 .indexOf():

检查 x 是否在值数组中

Example Here

var values = ["An", "Apple", "A", "Day"];

if (values.indexOf(x) !== -1) {
    return true;
} else {
    return false;
}
matches = ["An", "Apple", "A", "Day"];
if (matches.indexOf(x) > -1){
  return true;
} else{
  return false;
}

我不是 Java 编码员,因此可能存在语法错误,但我使用了我在 VB 中所做的概念,然后应用了我使用叔叔 [=14] 发现的语法=].

string[] SearchTerm = { "An", "Apple", "A","Day","Keeps","The" }
for(String str : SearchTerm){
    if(x==SearchTerm[i]){
        return true;
        break;
    }
    else{
        return false;
    }
}

不做 if x then true else false 只做 return x。所以:

var values = [...];
return values.indexOf(x) > -1;