JavaScript中的命名空間

來源:互聯網
上載者:User

  清理簡化代碼的一個重要而簡單的概念是命名空間(namespace)。目前的JavaScript並不支援命名空間(和Java、C#、Python不同),所以我們不得不通過類似的方法取得合適的效果。

  實際上,JavaScript裡並不存在“命名空間”的概念,但考慮到JavaScript的所有對象都有自己的屬性,屬性又可以包含對象,這樣就能創造一些和其他語言裡面的命名空間神似的東西了。運用這一技巧建立出來的獨特結構如下所示。

 

 

Code
<script language="javascript">

//建立預設的、全域的命名空間
var Noo = {};

//使用對象設定一些子命名空間
Noo.Control = {};

//建立最終命名空間,它包含一個值為函數的屬性,採用JSON對象建立方式
Noo.Control.Event = {
    show:function(){alert("成功");}
};

//同下面兩句等價
/*
Noo.Control.Event = {};
Noo.Control.Event.show = function(){alert("成功");};
*/

//調用某個具體命名空間中的函數
Noo.Control.Event.show();

</script>

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.