3 回答
TA贡献1111条经验 获得超0个赞
您可以将语句包装在一个函数中,它会更干净一点:
if(X == x && A == a){
do_A();
}
else if (X == x && A == b){
do_B();
}
else if (X != x && A == a){
do_C()
}
else if (X !=x && A == b){
do_D()
}
会成为 :
const doSomething = () => {
if (X == x && A == a) return do_A();
if (X == x && A == b) return do_B();
if (X != x && A == a) return do_C();
if (X !=x && A == b) return do_D();
};
doSomething();
TA贡献1875条经验 获得超3个赞
你可以使用 switch 语句,像这样: switch(expression) { case x: // code block break; case y: // 代码块中断;默认值:// 代码块 } 但是您不会拥有@jcubic 提到的更高效的代码
TA贡献1810条经验 获得超5个赞
一个可能的解决方案是使用switch-case如下语句:
switch(X + "|" + A) {
case x + "|" + a:
...
break;
case y + "|" + a:
break;
case z + "|" + c:
break;
case zz + "|" + d:
break;
}
我不知道您是否认为这种写作风格对您来说更好看,但它的效率低于您在问题中提出的那种,因为您必须在比较它们之前加入字符串。
添加回答
举报