測試一下當我們需要多個判斷的時候。 使用 switch case 的小細節。
我們可以用多個 if else ,甚至巢狀結構去做多個判斷。
例如:
var fruit = 'apple'
if (fruit == 'banana') {
alert('It is a banana')
} else if (fruit == 'peach') {
alert('It is a peach')
} else if (fruit == 'apple') {
alert('It is an apple')
} else {
alert('I don\'t no what it is')
}
這樣的格式會令我們想到另外一個語法 switch case。
例如:
var fruit = 'apple'
switch(fruit) {
case 'banana':
alert('It is a banana')
break;
case 'peach':
alert('It is a peach')
break;
case 'apple':
alert('It is an apple')
break;
default:
alert('I don\'t no what it is')
break
}
思考然後實驗:
得出一樣結果,但是兩個東西的差別在哪裡? if else 也並未使用 break 語法,當給值符合判斷的時候,只會執行 {} 裡面的內容。而 switch case 並未有 {} 去包裹執行範圍,必須使用 break 中斷接下來的執行。在缺少 break 的情狀下,就不再判斷,而是直接執行下面每一個項目,直到出現 break 語句。
var fruit = 'banana'
switch(fruit) {
case 'banana':
alert('It is a banana')
case 'peach':
alert('It is a peach')
case 'apple':
alert('It is an apple')
break;
default:
alert('I don\'t no what it is')
break
}
說明:
明明只有香蕉正確,也會執行桃子的項目。