使用JavaScript switch case 另類寫法
更新時(shí)間:2010年03月14日 16:33:04 作者:
在JavaScript里,函數(shù)(todoA、todoB、todoC)就是對(duì)象,“()”的作用就是就是執(zhí)行函數(shù)對(duì)象,二者簡單地組合一下就能夠讓代碼清晰簡潔很多了,何樂不為呢?
習(xí)慣了C#的語法,遇到多分支調(diào)用的情況,除了最簡單的if-else,那么就是switch-case了,所以使用JavaScript的時(shí)候就很容易會(huì)寫出下面這樣的代碼:
// JScript source code
//something的值是1、2、3...
switch (something) {
case 1:
todoA();
break;
case 2:
todoB();
break;
case 3:
todoC();
break;
//...
}
這樣的代碼本身也沒什么,只是可讀性差一些,看起來有點(diǎn)費(fèi)勁,JavaScript雖然支持switch-case,不過有一種更好的寫法值得推廣:
// JScript source code
//something的值是1、2、3...
var cases = {
1: todoA,
2: todoB,
3: todoC
};
if (cases[something]) {
cases[something]();
}
作者:Justin
出處:http://justinw.cnblogs.com/
復(fù)制代碼 代碼如下:
// JScript source code
//something的值是1、2、3...
switch (something) {
case 1:
todoA();
break;
case 2:
todoB();
break;
case 3:
todoC();
break;
//...
}
這樣的代碼本身也沒什么,只是可讀性差一些,看起來有點(diǎn)費(fèi)勁,JavaScript雖然支持switch-case,不過有一種更好的寫法值得推廣:
復(fù)制代碼 代碼如下:
// JScript source code
//something的值是1、2、3...
var cases = {
1: todoA,
2: todoB,
3: todoC
};
if (cases[something]) {
cases[something]();
}
作者:Justin
出處:http://justinw.cnblogs.com/
相關(guān)文章
javascript 保存文件到本地實(shí)現(xiàn)方法
本文將提供兩種方式保存圖片,大家可以根據(jù)喜歡自由選擇2012-11-11JS中產(chǎn)生標(biāo)識(shí)符方式的演變
本文記錄下JS中產(chǎn)生標(biāo)識(shí)符方式的演變,從ES5到ES6,ES5及其之前是一種方式,只包含兩種聲明(var/function),ES6則增加了一些產(chǎn)生標(biāo)識(shí)符的關(guān)鍵字,如 let、const、class。2015-06-06原生js實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)代碼分享
這篇文章主要介紹了原生js實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)功能以及代碼分享,對(duì)此有需要的朋友可以參考學(xué)習(xí)下。2018-02-02javascript垃圾收集機(jī)制與內(nèi)存泄漏詳細(xì)解析
本文是對(duì)javascript中的垃圾收集機(jī)制與內(nèi)存泄漏進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下,希望對(duì)大家有所幫助2013-11-11JavaScript中call,apply,bind的區(qū)別與實(shí)現(xiàn)
這篇文章主要介紹了JavaScript中call,apply,bind的區(qū)別與實(shí)現(xiàn),文章通過圍繞主題思想展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-09-09js使用setTimeout實(shí)現(xiàn)定時(shí)炸彈的方法
這篇文章主要介紹了js使用setTimeout實(shí)現(xiàn)定時(shí)炸彈的方法,涉及javascript中setTimeout方法的使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-04-04JS實(shí)現(xiàn)頁面加載完成之后自動(dòng)刷新一次問題
這篇文章主要介紹了JS實(shí)現(xiàn)頁面加載完成之后自動(dòng)刷新一次問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02