我对javascript有点陌生,我只是想知道这是否可能。
考虑一下:
if(foo('1')){
// do something
}
else if(foo('2')){
// do something else
}
else if(foo('3')){
// do something different
}
else if(foo('4')){
// do something completely different
}
...
else if(foo(n)){
...
}
foo(stringValue)
是一个返回true
或返回的方法,false
但问题是我不能以任何方式更改该方法(例如更改返回值)。现在,如果我想重构代码,我可能会将所有 foo 参数值放在一个集合中,为 if 语句中的每个唯一操作创建一个方法,遍历所有参数值并在 foo(n ) 返回 true,但这似乎是一种非常丑陋的做法。是否有更好的方法可以使用 switch 语句来实现这一点?