1

我返回了一个字符串,fruit它可以有很多值,例如:bananaapplegrapesorangemango

我想输出这个字符串的值,但我只想显示其中的一些。这使我的 IF 声明又长又丑:

 if ( fruit != 'apple' || fruit != 'grapes' || fruit != 'banana' ) {
      // display them
 }

我还能怎么写这个?会.filter工作吗?我可以将不需要的水果放入一个数组中并说如果fruit匹配一个数组值,什么都不做吗?

4

2 回答 2

7
var dontMatch = new Array('apple','grapes','banana');
if(dontMatch.indexOf(fruit) == -1)
{
    //fruit is none of the above
}
于 2013-07-24T14:36:43.300 回答
1

也许尝试一个案例陈述?

switch(fruit) {
    case 'apple': // dont display
        break;
    case 'grapes': // dont display
        break;
    case 'banana': // dont display
        break;
    case 'orange': // display
        break;
    case 'mango': // display
        break;
}
于 2013-07-24T14:37:03.577 回答