目前我的代码中有多个if-else循环,例如:
if (a > 2 && a < 4)
{
// do something
}
else if (a > 4 && a < 6)
{
// do something
}
else if (a > 6 && a < 8)
{
// do something
}
... and so on.
&#13;
有没有办法将其重新排列成更简单的FOR循环?或任何其他可以使代码更优化的循环?
答案 0 :(得分:1)
如果您想检查确切的值,可以使用switch
。但是,由于您的条件基于数学表达式,因此您最好坚持使用您所拥有的内容。它可能看起来很混乱,但它可能已经是你做你想做的事情最有效的方式。
答案 1 :(得分:1)
for (int i = 2; ; i += 2)
{
if (a > i && a < i + 2)
{
//Do your thing
break;
}
}
答案 2 :(得分:0)
如果我理解正确,你只需要将值放在一个数组中,如下所示并动态调用方法,那就是你要找的东西?
var range = [3,5,7] //defined the range as >2 and <4 is equal to 3 and so on.
$.each(range, function(i, val){
window[PerformActionByVal + val]();//call the specific function
});
function PerformActionByVal3()
{
}
function PerformActionByVal5()
{
}