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

Javascript 命名空間模式

 更新時間:2013年11月01日 11:03:18   作者:  
命名空間是通過為項目或庫創(chuàng)建一個全局對象,然后將所有功能添加到該全局變量中。通過減少程序中全局變量的數(shù)量,實現(xiàn)單全局變量,從而在具有大量函數(shù)、對象和其他變量的情況下不會造成全局污染,同時也避免了命名沖突等問題

然而,在不同的文件中給一個命名空間添加屬性的時候,首先要保證這個命名空間是已經(jīng)存在的,同時不對已有的命名空間造成任何破壞??梢酝ㄟ^非破壞性的命名空間函數(shù)實現(xiàn):

復(fù)制代碼 代碼如下:

var KUI = KUI || {};
KUI.utils = KUI.utils || {};

KUI.utils.namespace = function(ns){
    var parts = ns.split("."),
        object = KUI,
        i, len;

    if(parts[0] === "KUI"){
        parts = parts.slice(1);
    }

    for(i = 0, len = parts.length; i < len; i+=1){

        if(!object[parts[i]]){
            object[parts[i]] = {};
        }

        object = object[parts[i]];
    }

    return object;
};

用法:

復(fù)制代碼 代碼如下:

KUI.utils.namespace("KUI.common");
KUI.utils.namespace("KUI.common.testing");
KUI.utils.namespace("KUI.modules.function.plugins");
KUI.utils.namespace("format");

看一下經(jīng)過上述后KUI都有什么:

復(fù)制代碼 代碼如下:

{
    "utils": {},
    "common": {
        "testing": {}
    },
    "modules": {
        "function": {
            "plugins": {}
        }
    },
    "format": {}
}

命名空間模式的缺點

1.需要輸入更長的字符,并且需要更長的解析時間;
2.對單全局變量的依賴性,即任何代碼都可以修改該全局實例,其他代碼將獲得修改后的實例。

相關(guān)文章

  • JS中實現(xiàn)簡單Formatter函數(shù)示例代碼

    JS中實現(xiàn)簡單Formatter函數(shù)示例代碼

    JS沒有提供方便使用的Formatter函數(shù),用字符拼接的方式看起來混亂難讀,下面是JS簡單實現(xiàn)版本(沒有嚴(yán)格測試)
    2014-08-08
  • JavaScript的漂亮的代碼片段

    JavaScript的漂亮的代碼片段

    記錄我看到之后,不得不贊的代碼片段。本貼板內(nèi)容將不斷更新,歡迎關(guān)注
    2013-06-06
  • Echats圖表大屏自適應(yīng)的實現(xiàn)方法

    Echats圖表大屏自適應(yīng)的實現(xiàn)方法

    很多時候我們需要用圖表來制作我們統(tǒng)計的數(shù)據(jù)直觀的分析,所以我們可以用Echarts來制作圖表,這篇文章主要給大家介紹了關(guān)于Echats圖表大屏自適應(yīng)的實現(xiàn)方法,需要的朋友可以參考下
    2021-10-10
  • javascript getBoundingClientRect() 來獲取頁面元素的位置的代碼[修正版]

    javascript getBoundingClientRect() 來獲取頁面元素的位置的代碼[修正版]

    該方法已經(jīng)不再是IE Only了,F(xiàn)F3.0+和Opera9.5+已經(jīng)支持了該方法,可以說在獲得頁面元素位置上效率能有很大的提高,在以前版本的Opera和Firefox中必須通過循環(huán)來獲得元素在頁面中的絕對位置。
    2009-05-05
  • 利用jsonp解決js讀取本地json跨域的問題

    利用jsonp解決js讀取本地json跨域的問題

    這篇文章主要給大家介紹了關(guān)于利用jsonp解決js讀取本地json跨域的問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • 使用JS實現(xiàn)圖片展示瀑布流效果的實例代碼

    使用JS實現(xiàn)圖片展示瀑布流效果的實例代碼

    下面小編就為大家?guī)硪黄褂肑S實現(xiàn)圖片展示瀑布流效果的實例代碼。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-09-09
  • JS實現(xiàn)的自定義右鍵菜單實例二則

    JS實現(xiàn)的自定義右鍵菜單實例二則

    這篇文章主要介紹了JS實現(xiàn)的自定義右鍵菜單,以兩則實例形式分析了javascript自定義右鍵菜單效果的實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-09-09
  • 微信小程序進行微信支付的步驟昂述

    微信小程序進行微信支付的步驟昂述

    最近開發(fā)微信小程序進入到支付階段,一直以來從事App開發(fā),所以支付流程還是熟記于心的。下面通過本文給大家講述下微信小程序進行微信支付的步驟,需要的朋友可以參考下
    2016-12-12
  • JS實現(xiàn)炫酷雪花飄落效果

    JS實現(xiàn)炫酷雪花飄落效果

    這篇文章主要為大家詳細(xì)介紹了JS實現(xiàn)炫酷雪花飄落效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-08-08
  • javascript中的類,繼承,構(gòu)造函數(shù)詳解

    javascript中的類,繼承,構(gòu)造函數(shù)詳解

    這篇文章主要為大家詳細(xì)介紹了javascript中的類,繼承,構(gòu)造函數(shù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02

最新評論

潞城市| 饶河县| 阳高县| 黔南| 九龙城区| 清新县| 长宁县| 那坡县| 邻水| 武冈市| 乌兰察布市| 玉屏| 叙永县| 凌源市| 抚宁县| 安仁县| 交城县| 玉树县| 独山县| 海林市| 佛坪县| 山阴县| 博白县| 苏尼特左旗| 贵溪市| 云阳县| 台东市| 古田县| 永胜县| 大厂| 辛集市| 涡阳县| 襄城县| 东兰县| 九龙坡区| 彩票| 唐河县| 宿州市| 宝应县| 通道| 秦安县|