我有两个变量,我想通过相同的开关语句运行相同的结果
var n1 = first_number;
var n2 = second_number;
switch(for n1 and n2 at the same time){
case "if n1 or n2 depending on which is being tested = something":
do something to the one of n1 or n2 that matches the case
};
对不起的解释感到抱歉,我试过但我不能更好地解释
答案 0 :(得分:1)
正如其他人所说,if
似乎更适合你想做的事。
话虽如此,有一种方法可以“哄骗”#34; switch
执行您的要求,并且在非常罕见的情况下有用。使用您描述的逻辑,您将执行此操作:
var n1 = first_number;
var n2 = second_number;
switch(true) {
case (n1 === something || n2 === something) :
. . . do stuff . . .
};
在极少数情况下,case
语句的落后可以使这种方法变得有用,但它也可以使其正确设置甚至更加棘手。
if
语句。答案 1 :(得分:0)
var n1 = 'first_number';
var n2 = 'second_number';
if (n1 && n2) {
//Do something with n1 and n2
} else if (n1 && !n2) {
//Do something with n1
} else if (!n1 && n2) {
//Do something with n2
} else {
//Default
}
如果你喜欢它更复杂
var n1 = 'first_number';
var n2 = 'second_number';
var n = [n1, n2];
switch (n.join(';')) {
case "first_number;second_number":
//Do something
break;
case "first_number":
//Do something
break;
case "second_number":
//Do something
break;
default:
console.log('default');
break;
}