如何在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