一个if块我要检查替代多个或语句在Javascript
if(x == "An" || x == "Apple" || x == "A" || x == "Day" || x == "Keeps" || x == "The"....and so on){
return true;
}
else{
return false;
}
有没有更好的方式来写大量的||
条件if
声明?
一个if块我要检查替代多个或语句在Javascript
if(x == "An" || x == "Apple" || x == "A" || x == "Day" || x == "Keeps" || x == "The"....and so on){
return true;
}
else{
return false;
}
有没有更好的方式来写大量的||
条件if
声明?
matches = ["An", "Apple", "A", "Day"];
if (matches.indexOf(x) > -1){
return true;
} else{
return false;
}
您可以在值存储在一个数组,然后检查是否x
是值的阵列中使用.indexOf()
:
var values = ["An", "Apple", "A", "Day"];
if (values.indexOf(x) !== -1) {
return true;
} else {
return false;
}
我没有Java编码器,所以可能存在语法错误,但我使用了我在VB中会做的概念,然后应用了我使用Google叔叔发现的语法。
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;
请向OP(以及SO的未来访客)解释为什么你做了你所做的事情。 – 2015-02-13 17:18:04
'switch'语句将更加结构化,并且保持数组中比较的目标字符串会更整齐。 – slugster 2015-02-12 00:40:05