當(dāng)前位置:
首頁(yè) >
前端技术
> javascript
>内容正文
javascript
JS 设计模式四 -- 模块模式
生活随笔
收集整理的這篇文章主要介紹了
JS 设计模式四 -- 模块模式
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
概念
模塊模式的思路 就是 就是單例模式添加私有屬性和私有方法,減少全局變量的使用。
簡(jiǎn)單的代碼結(jié)構(gòu):
var singleMode = (function(){// 創(chuàng)建私有變量var privateNum = 100;// 創(chuàng)建私有函數(shù)function privateFunc(){// 實(shí)現(xiàn)自己的業(yè)務(wù)邏輯代碼 }// 返回一個(gè)對(duì)象包含公有方法和屬性return {publicMethod1: publicMethod1,publicMethod2: publicMethod1}; })();?
什么時(shí)候使用模塊模式?
如果我們必須創(chuàng)建一個(gè)對(duì)象并對(duì)某些對(duì)象進(jìn)行初始化時(shí),同時(shí)還要公開訪問(wèn)這些私有數(shù)據(jù)的方法,name這個(gè)時(shí)候我們就可以使用模塊模式了。
?
增強(qiáng)的模塊模式
增強(qiáng)的模塊模式的使用場(chǎng)合是:適合那些單列必須是某種類型的實(shí)例,同時(shí)還必須添加某些屬性或方法對(duì)其加以增強(qiáng)的情況。
function CustomType() {this.name = "GaoSir"; }; CustomType.prototype.getName = function(){return this.name; } var application = (function(){// 定義私有var privateA = "privateA";// 定義私有函數(shù)function privateMethodA(){};// 實(shí)例化一個(gè)對(duì)象后,返回該實(shí)例,然后為該實(shí)例增加一些公有屬性和方法var object = new CustomType();// 添加公有屬性object.publicA = "publicA";// 添加公有方法object.publicB = function(){return privateA;}// 返回該對(duì)象return object; })();console.log(application.publicA);// publicA
console.log(application.publicB());?// privateA
console.log(application.name);?// GaoSir
console.log(application.getName());// GaoSir
??
轉(zhuǎn)載于:https://www.cnblogs.com/gaosirs/p/10748852.html
總結(jié)
以上是生活随笔為你收集整理的JS 设计模式四 -- 模块模式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: springMVC文件下载
- 下一篇: zoj2930