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

JavaScript 編程引入命名空間的方法與代碼

 更新時間:2007年08月13日 19:25:25   作者:  
JavaScript 代碼一般最常見的語法格式就是定義函數(shù) function xxx(){/*code...*/},經(jīng)常有這樣的一大堆函數(shù)定義。函數(shù)名很容易發(fā)生沖突,特別是引入多個js文件時,沖突的情況尤為明顯。因此也就有引入命名空間的必要。
Javascript 本身沒有命名空間的概念,需要用對象模擬出來。
比如定義一個命名空間的類,用于創(chuàng)建命名空間:

function NameSpace(){
}

這是一個構(gòu)造函數(shù),但卻不做任何事情,再來下面和評論有關(guān)的代碼:

var comment = new NameSpace();
comment.list = function(){/*code...*/};
comment.counter = 0;

第一行創(chuàng)建所謂命名空間(其實就是一個空白對象),名為comment,第二、三行定義該空間下的兩個方法。調(diào)用時可以使用 comment.list() 或者 comment.counter++ 等;
再創(chuàng)建子命名空間:

comment.add = new NameSpace();
comment.add.post = function(){/*code...*/}
comment.add.check = function(){}

之所以引入命名空間的概念,是為了避免函數(shù)名相同的問題。上面的過程也可以這樣定義:

var comment = {
 list : function(){/*code...*/},
 add  : {
  post  :  function(){/*code...*/},
  check :  function(){/*code...*/}
 }
}

prototype.js 里面就大量使用這種方式,雖然這種方式更直觀地像一棵樹,但只要節(jié)點稍多一些,眼睛就忙于尋找這些節(jié)點的關(guān)系,命名空間的做法是橫向地描述這種關(guān)系樹,層次關(guān)系直接表現(xiàn)在字面上,兩種方式效果一致,但書寫風格卻各有特點。

再擴展一個方法:

NameSpace.prototype.appendChild = function(ns){
for (var key in ns){
this[key] = ns[key];
}
return this;
}
NameSpace.prototype.copyChild = NameSpace.prototype.appendChild;


相關(guān)文章

  • 微信小程序返回上一頁傳參并刷新過程解析

    微信小程序返回上一頁傳參并刷新過程解析

    這篇文章主要介紹了微信小程序返回上一頁傳參并刷新過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • js實現(xiàn)tab切換效果實例

    js實現(xiàn)tab切換效果實例

    這篇文章主要介紹了js實現(xiàn)的tab標簽切換效果,功能非常簡單,實現(xiàn)了點擊切換的效果,推薦給大家,有需要的小伙伴可以參考下。
    2015-09-09
  • 第六篇Bootstrap表格樣式介紹

    第六篇Bootstrap表格樣式介紹

    這篇文章主要介紹了第六篇Bootstrap表格樣式介紹的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-06-06
  • JS常用字符串處理方法應用總結(jié)

    JS常用字符串處理方法應用總結(jié)

    這篇文章主要總結(jié)了JS常用字符串的處理方法,需要的朋友可以參考下
    2014-05-05
  • 詳解關(guān)于webpack多入口熱加載很慢的原因

    詳解關(guān)于webpack多入口熱加載很慢的原因

    這篇文章主要介紹了詳解關(guān)于webpack多入口熱加載很慢的原因,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-04-04
  • javascript 通過封裝div方式彈出div窗體

    javascript 通過封裝div方式彈出div窗體

    廢話少說,此js對象是通過封裝頁面上的div,將其彈出,可以彈出多個,參考了一些高人代碼,達到我要的效果。先看看效果圖。配合一css就可以很好看了。
    2009-10-10
  • postman+json+springmvc測試批量添加實例

    postman+json+springmvc測試批量添加實例

    下面小編就為大家分享一篇postman+json+springmvc測試批量添加實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • js中常用的4種模糊查詢詳解(includes()、indexOf()、search()、match())

    js中常用的4種模糊查詢詳解(includes()、indexOf()、search()、match())

    這篇文章主要給大家介紹了關(guān)于js中常用的4種模糊查詢(includes()、indexOf()、search()、match())的相關(guān)資料,搜索可以使我們更快的找到某一個關(guān)鍵詞或者某一個商品,所以模糊查詢和下拉匹配也成了前端必備的一個小技能,需要的朋友可以參考下
    2023-11-11
  • JS中強制類型轉(zhuǎn)換的實現(xiàn)

    JS中強制類型轉(zhuǎn)換的實現(xiàn)

    JavaScript中有幾種強制類型轉(zhuǎn)換的方法,可以將一個數(shù)據(jù)類型轉(zhuǎn)換為另一個數(shù)據(jù)類型,具有一定的參考價值,感興趣的可以了解一下
    2023-05-05
  • 微信小程序canvas實現(xiàn)簽名功能

    微信小程序canvas實現(xiàn)簽名功能

    這篇文章主要為大家詳細介紹了微信小程序canvas實現(xiàn)簽名功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-01-01

最新評論