2014-03-19 72 views
0

如何在JS中爲switch語句設置多個條件?在javascript中切換的多個條件

或如何在開關內設置或調節?

如:

switch(apple.amount) or switch(orange.amount) 
{ 

case '1 kg': 
total = 100; 
break; 

case '2 kg': 
total = 200; 
break; 
} 
+1

而如果兩者都有值,究竟該如何工作? –

+0

將您的開關封裝在一個函數中,並將這兩個數值傳遞給所述函數。 – SBI

+0

每個人都有價值。 –

回答

2

使用loop

var amounts = [apple.amount, orange.amount]; 
var totals = []; 
for(var i = 0; i < amounts.length; i++){ 
    switch(amounts[i]) 
    { 
     case '1 kg': 
     totals[i] = 100; 
     break; 

     case '2 kg': 
     totals[i] = 200; 
     break; 
    } 
} 

如果你的肯定,只有一個會不會有什麼執行過程中的值,你可以使用||操作:

var amount1; 
var amount2 = '2 kg'; 
var total; 

    switch(amount1 || amount2) 
    { 
     case '1 kg': 
     total = 100; 
     break; 

     case '2 kg': 
     total = 200; 
     break; 
    } 

alert(total); 
0

將開關置於一個函數中並測試返回值:

function getTotal(amount) { 
    switch(amount) { 
    case '1 kg': 
     return 100 
    case '2 kg': 
     return 200 
    } 
} 
if(getTotal(apple.amount) || getTotal(orange.amount)) { 
    // both returns a total 
}