我有条件
if(item == 'a' || item == 'b' || item == 'c' || item == 'd' || item == 'e') {
.........statements......
}
如何减少分支。还有其他方法可以在JavaScript中编写它。
答案 0 :(得分:3)
对数组使用 Array#indexOf
方法。
if(['a','b','c','d','e'].indexOf(item) > -1){
//.........statements......
}
答案 1 :(得分:3)
您还可以使用较新的Array.includes
if (['a','b','c','d','e'].includes(item)) {
...
}
另一个选项(针对您发布的特定情况)是使用<
/ >
if (item >= 'a' && item <= 'e') {
...
}
答案 2 :(得分:2)
您可以使用如下所示的数组。
var arr = ['a','b','c','d','e'];
if(arr.indexOf(item) > -1)
{
//statements
}
答案 3 :(得分:1)
这很好用:
if('abcde'.indexOf(item) > -1) {
...
}
您也可以使用ES6支持的较新版String.prototype.includes()。
if('abcde'.includes(item)) {
...
}