亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Javascript 命名空間模式

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

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

復制代碼 代碼如下:

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;
};

用法:

復制代碼 代碼如下:

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都有什么:

復制代碼 代碼如下:

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

命名空間模式的缺點

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

相關文章

  • layui之table checkbox初始化時選中對應選項的方法

    layui之table checkbox初始化時選中對應選項的方法

    今天小編就為大家分享一篇layui之table checkbox初始化時選中對應選項的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • 通過微信公眾平臺獲取公眾號文章的方法示例

    通過微信公眾平臺獲取公眾號文章的方法示例

    這篇文章主要介紹了通過微信公眾平臺獲取公眾號文章的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-12-12
  • 火狐textarea輸入法的bug的觸發(fā)及解決

    火狐textarea輸入法的bug的觸發(fā)及解決

    在firefox中,如果一個textarea獲取焦點,在輸入法激活的狀態(tài)如果這時js將該textarea的value修改,那么該textarea會直接被清空,下面是具體的解決方法,遇到類似問題的朋友可以參考下
    2013-07-07
  • javascript從作用域鏈談閉包

    javascript從作用域鏈談閉包

    這篇文章主要從作用域鏈談閉包,閉包(closure)是Javascript語言的一個難點,也是它的特色,很多高級應用都要依靠閉包實現(xiàn),本文針對閉包進行學習,需要的朋友可以參考下
    2015-12-12
  • Meta 標簽生成器

    Meta 標簽生成器

    非常不錯的可以生產(chǎn)標簽的小東西
    2008-04-04
  • JS 獲取頁面尺寸的方法詳解

    JS 獲取頁面尺寸的方法詳解

    通過 JS 獲取頁面相關的尺寸是比較常見的操作,尤其是在動態(tài)計算頁面布局時,今天我們就來學習一下幾個獲取頁面尺寸的基本方法,需要的朋友可以參考下
    2023-09-09
  • ExtJs使用自定義插件動態(tài)保存表頭配置(隱藏或顯示)

    ExtJs使用自定義插件動態(tài)保存表頭配置(隱藏或顯示)

    這篇文章主要介紹了ExtJs使用自定義插件動態(tài)保存表頭配置(隱藏或顯示) ,需要的朋友可以參考下
    2018-09-09
  • js與運算符和或運算符的妙用

    js與運算符和或運算符的妙用

    這篇文章主要介紹了js與運算符和或運算符的使用方法,需要的朋友可以參考下
    2014-02-02
  • uniapp項目引入?js文件以及全局使用方法

    uniapp項目引入?js文件以及全局使用方法

    這篇文章主要給大家介紹了關于uniapp項目引入?js文件以及全局使用方法的相關資料,在Uniapp中引入JS文件是一項常見的操作,文中通過代碼示例介紹的非常詳細,需要的朋友可以參考下
    2023-12-12
  • Javascript 事件流和事件綁定

    Javascript 事件流和事件綁定

    本文中的部分觀點參考至《Javascript高級程序設計》(很好的一本書,推薦大家看看!),addEvent函數(shù)借鑒了YUI2.7的_addListener方法,這里也要謝謝YUI那些牛人,向他們致敬!
    2009-07-07

最新評論