js使用物件代替if和switch流程控制語句
大家知道js中常用的流程控制語句是if語句或者switch語句,這裡不多介紹了,更多內容可以參閱相關閱讀。
(1).if語句可以參閱javascript的if語句一章節。
(2).switch語句可以參閱js switch一章節。
但是使用if語句進行流程控制的效率並不高,當然使用switch的效率也就更低了,不知道從哪看了一段話,有大神說,優秀的程式碼中是沒有if語句的,下面就介紹一下使用物件來實現if和switch語句的功能。
先看一段switch語句的程式碼例項:
[JavaScript] 純文字檢視 複製程式碼function antzone(name) { switch (name) { case 'css': return 'css教程'; break; case 'div': return 'div教程'; break; case 'json': return 'json教程'; break; default: return false; break; } } console.log(antzone("css"));
下面就使用物件方式對上面的程式碼進行一下改造,程式碼如下:
[JavaScript] 純文字檢視 複製程式碼function antzone(name) { var names = { 'css': function() { return 'css教程'; }, 'div': function() { return 'div教程'; }, 'json': function() { return 'json教程'; } }; if (typeof names[name] !== 'function') { return false; } return names[name](); } console.log(antzone("css"));
上面的程式碼同樣實現了我們的要求,但是效率會更高一些。
相關文章
- go 流程控制之switch 語句介紹Go
- JavaScript 流程控制語句詳解:if語句、switch語句、while迴圈、for迴圈等JavaScriptWhile
- 流程控制語句
- 1.4js中流程控制語句.htmlJSHTML
- printf格式控制、switch-case語句
- js 學習之路7:switch/case語句的使用JS
- Java流程控制語句Java
- 【分支流程控制語句、迴圈流程控制語句】的學習
- 使用 "switch(ture)" 代替大量if
- 使用 "switch(true)" 代替大量if
- Linux下邏輯測試語句引數和流程控制語句 if語句Linux
- 流程控制、 迴圈語句
- SQL SERVER 流程控制語句SQLServer
- ### 流程控制語句結構
- 流程控制語句結構
- Lua流程控制語句if else的使用詳解
- JavaScript switch 語句JavaScript
- JavaScript switch語句JavaScript
- Go switch 語句Go
- Java基礎 - 流程控制語句Java
- python之流程控制語句Python
- Sql Server系列:流程控制語句SQLServer
- JavaScript常用的流程控制語句JavaScript
- Java學習之分支結構---判斷語句:if語句和switch語句Java
- js switch語句需要特別注意的地方JS
- 用merge 語句代替 insert 和deletedelete
- 『忘了再學』Shell流程控制 — 39、特殊流程控制語句
- switch語句的妙用
- switch語句逆向分析
- Python流程控制語句詳解Python
- php有幾種流程控制語句PHP
- JavaScript進階之流程控制語句JavaScript
- 《Java從入門到失業》第三章:基礎語法及基本程式結構(3.8):流程控制(選擇語句、if-else語句、switch語句)Java
- 利用反射代替switch反射
- 5、控制語句的使用
- 使用者互動、算術運算子、流程控制語句
- Go快速入門 03 | 控制結構:if、for、switch 邏輯語句Go
- JavaScript中的switch語句JavaScript