swtich/if...else的替代語(yǔ)句
很多時(shí)候,if...else...有很多判斷分支選項(xiàng),就會(huì)見到:
if (animal === 'dog') {
// TO DO 'dog'
} else if (animal === 'cat') {
// TO DO 'cat'
} else if (animal === 'bird') {
// TO DO 'bird'
} else if (animal === 'fish') {
// TO DO 'fish'
} else {
// TO DO 'other'
}
確實(shí)通俗易懂,且寫起來好方便,一路都是else if,太多選項(xiàng)分支,就有人用swtich這樣寫了:
swtich (animal) {
case 'dog':
// TO DO 'dog'
break;
case 'cat':
// TO DO 'cat'
break;
case 'bird':
// TO DO 'bird'
break;
case 'fish':
// TO DO 'fish'
break;
default:
// TO DO 'other'
}
但是,還是可以借鑒使用Object的hash思想:
function getAnimalName(name) {
var animals = {
'dog': function () {
return 'dog';
},
'cat': function() {
return 'cat';
},
'bird': function() {
return 'bird';
},
'fish': function() {
return 'fish';
},
'default': function() {
return 'other';
}
};
return (animals.name || animals.default)();
}
var animal = getAnimalName('dog');
console.log(animal);// 'dog'
以上就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。
相關(guān)文章
Javascript函數(shù)技巧學(xué)習(xí)
這篇文章主要介紹了Javascript函數(shù)技巧學(xué)習(xí),文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-07-07
JS實(shí)現(xiàn)拖動(dòng)滾動(dòng)條評(píng)分的效果代碼分享
本文給大家基于js實(shí)現(xiàn)拖動(dòng)滾動(dòng)條評(píng)分效果,在項(xiàng)目開發(fā)中經(jīng)??梢杂玫降模蠹铱梢愿有枰m當(dāng)?shù)奶砑有薷?,?duì)js評(píng)分效果感興趣的朋友一起看看吧2016-09-09
Laravel中常見的錯(cuò)誤與解決方法小結(jié)
大家在用Laravel框架期間可能會(huì)遇到了不少問題,現(xiàn)在我將自己遇到的一些問題總結(jié)出來,有一些調(diào)試起來著實(shí)不太容易,本文篩選出幾個(gè),希望這篇文章能讓大家在PHP開發(fā)中少走一些彎路。2016-08-08
javascript使用正則控制input輸入框允許輸入的值方法大全
在做項(xiàng)目的時(shí)候,我們經(jīng)常會(huì)遇到控制input輸入框允許輸入的值為數(shù)字,字母,漢字或者混排的情況,那么我們?cè)趺磥硖幚砟?,下面我們就來探討怎么通過用javascript正則來實(shí)現(xiàn)2014-06-06
js bind 函數(shù) 使用閉包保存執(zhí)行上下文
在javascript中,函數(shù)總是在一個(gè)特殊的上下文執(zhí)行(稱為執(zhí)行上下文),如果你將一個(gè)對(duì)象的函數(shù)賦值給另外一個(gè)變量的話,這個(gè)函數(shù)的執(zhí)行上下文就變?yōu)檫@個(gè)變量的上下文了。下面的一個(gè)例子能很好的說明這個(gè)問題2011-12-12
淺談使用splice函數(shù)對(duì)數(shù)組中的元素進(jìn)行刪除時(shí)的注意事項(xiàng)
下面小編就為大家?guī)硪黄獪\談使用splice函數(shù)對(duì)數(shù)組中的元素進(jìn)行刪除時(shí)的注意事項(xiàng)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-12-12
bootstrapTable+ajax加載數(shù)據(jù) refresh更新數(shù)據(jù)
這篇文章主要為大家詳細(xì)介紹了bootstrapTable+ajax加載數(shù)據(jù),以及refresh更新數(shù)據(jù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08
利用javascript打開模態(tài)對(duì)話框(示例代碼)
本篇文章主要是對(duì)利用javascript打開模態(tài)對(duì)話框的示例代碼進(jìn)行了介紹,需要的朋友可以過來參考下,希望對(duì)大家有所幫助2014-01-01

