最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用命令對象代替switch語句的寫法示例

 更新時間:2015年02月28日 11:34:13   投稿:junjie  
這篇文章主要介紹了使用命令對象代替switch語句的寫法示例,JS規(guī)范里面是禁止使用switch語句的,使用命令對象可以完美的解決這個問題,需要的朋友可以參考下

曾經(jīng)有人說過,真正好的程序是沒有if..else的,當然switch還不如if..else。JS規(guī)范里面是禁止使用switch的。

命令對象(command object)就完美的解決了這個問題。

引用一篇國外的博客提到的:

JavaScript 有著良好的控制流程語句,這些語句往往用花括號包裹著。不過有個例外:switch … case 語句。switch … case 的奇怪之處在于你必須在每個 case 末尾加上關鍵字 break,以防止流程控制權穿越進入下一個 case 語句中。穿越是指讓多條 case 執(zhí)行的手法,當未遇見預期的 break 時,控制權就自動交到下一句 case 手中。然而,就如同分號與花括號一樣,你很有可能會在不經(jīng)意之間忘了寫 break,當這發(fā)生時,后期的錯誤排查就比較痛苦,因為語句本身是沒錯的。因此,配對地寫 case … break 是個好習慣。
我們通常講,JavaScript 有著優(yōu)雅的對象字面量與頂級函數(shù),這些都使得特定的方法查詢變的非常簡單。為方法查詢所創(chuàng)建的對象,我們稱之為 活動對象(action object) 或 命令對象(command object),它被運用在許多軟件設計模式中,包括強大的而有用的命令模式。

實例:

復制代碼 代碼如下:

// switch 方法
    function testSwitch(name) {
        switch (name) {
            case '1':
                return 'hack';
                break;
            case '2':
                return 'slash';
                break;
            case '3':
                return 'run';
                break;
            default:
                return false;
                break;
        }
    }
    // 使用命令對象
    function testFn(name) {
        var names = {
            '1': function() {
                return 'hack';
            },
            '2': function() {
                return 'slash';
            },
            '3': function() {
                return 'run';
            }
        };
        if (typeof names[name] !== 'function') {
            return false;
        }
        return names[name]();
    }
    // 測試結(jié)果
    var result1 = testSwitch('1');
    var result2 = testFn('2');
    console.info(result1, result2);

相關文章

  • JS實現(xiàn)瀏覽器點擊下載圖片功能案例分析【親測有效】

    JS實現(xiàn)瀏覽器點擊下載圖片功能案例分析【親測有效】

    這篇文章主要介紹了JS實現(xiàn)瀏覽器點擊下載圖片功能,對比分析了同源與不同源兩種解決方案,并以實際案例形式分析了不同源情況下針對文件點擊下載的具體實現(xiàn)技巧與相關注意事項,需要的朋友可以參考下
    2023-04-04
  • JavaScript使用cookie記錄臨時訪客信息的方法

    JavaScript使用cookie記錄臨時訪客信息的方法

    這篇文章主要介紹了JavaScript使用cookie記錄臨時訪客信息的方法,涉及javascript操作cookie的技巧,非常具有實用價值,需要的朋友可以參考下
    2015-04-04
  • 探索JavaScript中私有成員的相關知識

    探索JavaScript中私有成員的相關知識

    這篇文章主要介紹了探索JavaScript中私有成員的相關知識,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,,需要的朋友可以參考下
    2019-06-06
  • js手動播放圖片實現(xiàn)圖片輪播效果

    js手動播放圖片實現(xiàn)圖片輪播效果

    這篇文章主要為大家詳細介紹了js手動播放圖片實現(xiàn)圖片輪播效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • ES6學習教程之Promise用法詳解

    ES6學習教程之Promise用法詳解

    這篇文章主要給大家介紹了關于ES6學習教程之Promise用法的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • js實現(xiàn)點擊圖片將圖片地址復制到粘貼板的方法

    js實現(xiàn)點擊圖片將圖片地址復制到粘貼板的方法

    這篇文章主要介紹了js實現(xiàn)點擊圖片將圖片地址復制到粘貼板的方法,涉及js操作節(jié)點的技巧,非常具有實用價值,需要的朋友可以參考下
    2015-02-02
  • javascript實現(xiàn)放大鏡功能

    javascript實現(xiàn)放大鏡功能

    這篇文章主要為大家詳細介紹了javascript入門之實現(xiàn)放大鏡功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-12-12
  • BootStrap.css 在手機端滑動時右側(cè)出現(xiàn)空白的原因及解決辦法

    BootStrap.css 在手機端滑動時右側(cè)出現(xiàn)空白的原因及解決辦法

    這篇文章主要介紹了BootStrap.css 在手機端滑動時右側(cè)出現(xiàn)空白的原因及解決辦法的相關資料,非常不錯具有參考借鑒價值,需要的朋友可以參考下
    2016-06-06
  • javascript間隔刷新的簡單實例

    javascript間隔刷新的簡單實例

    這篇文章介紹了javascript間隔刷新的簡單實例,有需要的朋友可以參考一下
    2013-11-11
  • 提高網(wǎng)站信任度的技巧

    提高網(wǎng)站信任度的技巧

    網(wǎng)站信任度:一方面指瀏覽者對于站點的信任程度,另一方面指搜索引擎對于網(wǎng)站的信任值(TrustRank),網(wǎng)站信任度對于企業(yè)站點更為重要.在得到更高信任度的同時,流量更容易轉(zhuǎn)化為實在的收入.
    2008-10-10

最新評論

宜昌市| 武功县| 商城县| 庆城县| 宝坻区| 中宁县| 蓬莱市| 鲜城| 郓城县| 威海市| 新巴尔虎右旗| 得荣县| 富阳市| 黄冈市| 扎鲁特旗| 拜城县| 卢氏县| 浦北县| 琼结县| 南宫市| 安新县| 新和县| 康马县| 洪雅县| 桓台县| 安福县| 延吉市| 汾西县| 岐山县| 邵武市| 东乌| 西畴县| 建宁县| 车致| 丰顺县| 弋阳县| 桃园县| 九江市| 浪卡子县| 中牟县| 泾阳县|