swtich/if...else的替代語句
很多時候,if...else...有很多判斷分支選項,就會見到:
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' }
確實通俗易懂,且寫起來好方便,一路都是else if,太多選項分支,就有人用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'
以上就是本文的全部內(nèi)容了,希望大家能夠喜歡。
相關(guān)文章
Javascript函數(shù)技巧學(xué)習(xí)
這篇文章主要介紹了Javascript函數(shù)技巧學(xué)習(xí),文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下2022-07-07javascript使用正則控制input輸入框允許輸入的值方法大全
在做項目的時候,我們經(jīng)常會遇到控制input輸入框允許輸入的值為數(shù)字,字母,漢字或者混排的情況,那么我們怎么來處理呢,下面我們就來探討怎么通過用javascript正則來實現(xiàn)2014-06-06js bind 函數(shù) 使用閉包保存執(zhí)行上下文
在javascript中,函數(shù)總是在一個特殊的上下文執(zhí)行(稱為執(zhí)行上下文),如果你將一個對象的函數(shù)賦值給另外一個變量的話,這個函數(shù)的執(zhí)行上下文就變?yōu)檫@個變量的上下文了。下面的一個例子能很好的說明這個問題2011-12-12淺談使用splice函數(shù)對數(shù)組中的元素進(jìn)行刪除時的注意事項
下面小編就為大家?guī)硪黄獪\談使用splice函數(shù)對數(shù)組中的元素進(jìn)行刪除時的注意事項。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-12-12bootstrapTable+ajax加載數(shù)據(jù) refresh更新數(shù)據(jù)
這篇文章主要為大家詳細(xì)介紹了bootstrapTable+ajax加載數(shù)據(jù),以及refresh更新數(shù)據(jù),具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-08-08利用javascript打開模態(tài)對話框(示例代碼)
本篇文章主要是對利用javascript打開模態(tài)對話框的示例代碼進(jìn)行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-01-01