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

關(guān)于JavaScript命名空間的一些心得

 更新時(shí)間:2014年06月07日 10:51:09   作者:  
這篇文章主要介紹了關(guān)于JavaScript命名空間的一些心得,分別給出了頂級(jí)、多級(jí)命名空間的例子,需要的朋友可以參考下

最近重構(gòu)東西,碰到命名空間的設(shè)定,搜了一些知識(shí),請(qǐng)教了一些高手,把自己的心得寫下來
相信大家都知道,window是頂級(jí)的,這里就不寫window了,先忽略

1:關(guān)于頂級(jí)

復(fù)制代碼 代碼如下:
var ns = ns || {};

可以看到,其實(shí)就是如果發(fā)現(xiàn)沒有這個(gè)對(duì)象,就自動(dòng)創(chuàng)建new Object();如果有,就直接使用這個(gè)對(duì)象,這樣就不會(huì)覆蓋。
2: 第二級(jí),當(dāng)然也可以在頂級(jí)的ns下創(chuàng)建第二級(jí),即
復(fù)制代碼 代碼如下:
ns.ModuleClass = {};

可以看到,在ns下創(chuàng)建了一個(gè)類,當(dāng)然也可以繼續(xù)創(chuàng)建類里的方法,即是這種:
復(fù)制代碼 代碼如下:
ns.ModuleClass.method1= function() {////};

3:多級(jí)應(yīng)該怎么做呢,比如這種com.qw.view,我想把他設(shè)成一個(gè)命名空間,這就要對(duì)每一個(gè)點(diǎn)分隔的名稱進(jìn)行分別設(shè)置命名空間,分別設(shè)成對(duì)象

我們看一個(gè)例子,把他設(shè)置在window下:

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

function namespace(sSpace) {
  var arr = sSpace.split('.'),i = 0,nameI;
  var root = window;
  for (; nameI = arr[i++];) {
    if (!root[nameI]) {
      root[nameI] = {};
    }
    root = root[nameI];
  }
  return root;
}

可以看到確實(shí)是我上面說的思路,用了一個(gè)遍歷,把分隔的全部設(shè)成對(duì)象,這樣每個(gè)分隔的都可以單獨(dú)用。

4:列一下常用的,簡單快捷的設(shè)置命名空間的小技巧吧

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

if (!window.ns) {
  window.ns = {};
}
var ns;
if(typeof ns == "undefined"){
  ns = {};
}
if(typeof ns.ClassName == "undefined"){
  ns.ClassName = {};
}

相關(guān)文章

  • 11款基于Javascript的文件管理器

    11款基于Javascript的文件管理器

    11款基于JavaScript的文件管理器,大多數(shù)免費(fèi)開源,功能并不遜色于那些專業(yè)的文件管理程序。
    2009-10-10
  • javascript特殊文本輸入框網(wǎng)頁特效

    javascript特殊文本輸入框網(wǎng)頁特效

    這篇文章主要為大家詳細(xì)介紹了javascript特殊文本輸入框網(wǎng)頁特效,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • 微信小程序宿主環(huán)境基礎(chǔ)介紹

    微信小程序宿主環(huán)境基礎(chǔ)介紹

    這篇文章主要介紹了微信小程序宿主環(huán)境的基礎(chǔ)知識(shí),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • javascript關(guān)于繼承的用法匯總

    javascript關(guān)于繼承的用法匯總

    這篇文章主要介紹了javascript關(guān)于繼承的用法,實(shí)例匯總了常見的javascript關(guān)于繼承的用法,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2014-12-12
  • 詳解JS中遍歷語法的比較

    詳解JS中遍歷語法的比較

    本篇文章主要介紹了詳解JS中遍歷語法的比較 ,主要介紹for循環(huán)、forEach、for...in、for...of的用法和缺點(diǎn),有興趣的可以了解一下。
    2017-04-04
  • 使用watch在微信小程序中實(shí)現(xiàn)全局狀態(tài)共享

    使用watch在微信小程序中實(shí)現(xiàn)全局狀態(tài)共享

    這篇文章主要給大家介紹了關(guān)于如何使用watch在小程序中實(shí)現(xiàn)全局狀態(tài)共享的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用微信小程序具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • 微信開發(fā) 使用picker封裝省市區(qū)三級(jí)聯(lián)動(dòng)模板

    微信開發(fā) 使用picker封裝省市區(qū)三級(jí)聯(lián)動(dòng)模板

    這篇文章主要學(xué)習(xí)微信開發(fā),如何使用picker封裝省市區(qū)三級(jí)聯(lián)動(dòng)模板,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • 寫了個(gè)XML+Tree無窮樹js版

    寫了個(gè)XML+Tree無窮樹js版

    寫了個(gè)XML+Tree無窮樹js版...
    2007-09-09
  • 原生JS實(shí)現(xiàn)螢火蟲效果

    原生JS實(shí)現(xiàn)螢火蟲效果

    這篇文章主要為大家詳細(xì)介紹了原生JS實(shí)現(xiàn)螢火蟲效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Highcharts 非常實(shí)用的Javascript統(tǒng)計(jì)圖demo示例

    Highcharts 非常實(shí)用的Javascript統(tǒng)計(jì)圖demo示例

    官網(wǎng)實(shí)例中給出了各式各樣的demo,可以參照document修改自己需要的即可,本文實(shí)現(xiàn)的是一個(gè)學(xué)生成績走勢(shì)demo,有需求的朋友可以參考下哈,希望對(duì)大家有所幫助
    2013-07-07

最新評(píng)論

甘肃省| 库车县| 贡觉县| 安岳县| 安福县| 杭锦旗| 成都市| 大方县| 广宗县| 瑞丽市| 合江县| 大厂| 安顺市| 鄢陵县| 比如县| 安阳市| 修水县| 汽车| 屯留县| 方山县| 盘山县| 礼泉县| 澄城县| 新和县| 酒泉市| 井研县| 益阳市| 柳州市| 鄂州市| 南郑县| 依安县| 通州市| 岳池县| 伊吾县| 扶余县| 綦江县| 林芝县| 洛阳市| 丹寨县| 商洛市| 山西省|