如何在JavaScript中减少if语句中的多个OR条件?

如何在JavaScript中减少if语句中的多个OR条件?,javascript,Javascript,我有一个条件: if (item == 'a' || item == 'b' || item == 'c' || item == 'd' || item == 'e') { // statements } 如何减少分支?是否有其他方法可以用JavaScript编写此代码。将方法与数组一起使用 if(['a','b','c','d','e'].indexOf(item) > -1){ //.........statements...... } 将方法与数组一起使用 if([

我有一个条件:

if (item == 'a' || item == 'b' || item == 'c' || item == 'd' || item == 'e') {
    // statements
}
如何减少分支?是否有其他方法可以用JavaScript编写此代码。

将方法与数组一起使用

if(['a','b','c','d','e'].indexOf(item) > -1){
   //.........statements......
}
将方法与数组一起使用

if(['a','b','c','d','e'].indexOf(item) > -1){
   //.........statements......
}

您可以使用如下所示的数组

var arr = ['a','b','c','d','e'];
if(arr.indexOf(item) > -1) 
{
   //statements
}

您可以使用如下所示的数组

var arr = ['a','b','c','d','e'];
if(arr.indexOf(item) > -1) 
{
   //statements
}

您也可以使用较新的

对于您发布的非常具体的案例,另一个选项是使用


您也可以使用较新的

对于您发布的非常具体的案例,另一个选项是使用


这将很好地发挥作用:

if('abcde'.indexOf(item) > -1) {
    ...
}
您还可以使用ES6中支持的更新版本

if('abcde'.includes(item)) {
    ...
} 

这将很好地发挥作用:

if('abcde'.indexOf(item) > -1) {
    ...
}
您还可以使用ES6中支持的更新版本

if('abcde'.includes(item)) {
    ...
} 

分支是什么意思?这里还有什么其他部分?可以使用开关。抱歉…更新了问题。如果'abcde'.indexofitem>-1…分支是什么意思?这里还有什么部分?可以使用开关。抱歉…更新了问题。如果'abcde'。indexofitem>-1…它确实减少了代码长度,但根本没有分支。它确实减少了代码长度,但根本没有分支。注意,虽然可以包含,但上不支持Array.include。@QZSupport Array.include实际上不在IE11中。谢谢你提醒我!:谢谢。请注意,上不支持Array.includes,尽管a可以包含它。@QZSupport Array.includes实际上不在IE11中。谢谢你提醒我!:谢谢。如果物品是ab?@PranavCBalan如果是ab,他会用你的答案。他的例子没有显示ab,所以我假设他不需要那个功能。kk:Dif项目是ab吗?@PranavCBalan如果是ab,他会用你的答案。他的例子没有显示ab,所以我假设他不需要那个功能。kk:D