1、單體分類:
簡單單體、閉包單體、惰性單體、分支單體。
2、**例項:
1、簡單單體
var singleton = {};// 最簡單的單體
// 給單體新增屬性和方法
var j =
};j.study(); // 張三正在學習...
// 單體可用於劃分命名空間(常用)
var j = {};
j.sayhello = function();
2、閉包單體
// 閉包的主要目的是 保護資料
// 建立閉包單體
var j = {};// 建立命名空間j
j.singleton = (function();
var f2 = function();
// 把塊級作用域的執行結果直接賦值給單體物件
return ,
method2 : function()
};})();
alert(j.singleton.color); // red
j.singleton.method1(); // 我是方法1
3、惰性單體
// 惰性單體(和閉包單體有一些相似之處)
// 命名空間
var j = {};
j.singleton = (function();
var fn2 = function();
return ,
method2 : function()
};}
return
return uniqinstance;}};
})();
var obj = j.singleton.getinstance();
alert(obj.attr1); // 10
obj.method1(); // fn1
4、分支單體
// 分支單體 (判斷程式的分支《多用於瀏覽器差異的檢測》)
var j = {}; // 命名空間
var def = true; // true代表火狐,false代表ie
j.more = (function();
var objb = ;
return def ? obja : objb;
})();
alert(j.more.attr1); // 我是火狐瀏覽器
JavaScript設計模式
js類設計模式一 類建構函式 function myclass 定義公共屬性 myclass.prototype 定義公共方法 myclass.prototype.methoda function myclass.prototype.methodb function 呼叫 var objclass ...
JavaScript 設計模式
1 單例模式 singleton pattern 單例模式,是一種常用的軟體設計模式。在它的核心結構中只包含乙個被稱為單例的特殊類。通過單例模式可以保證系統中乙個類只有乙個例項。即乙個類只有乙個物件例項 單例模式會阻止其他物件例項化其自己的單例物件的副本,從而確保所有物件都訪問唯一例項。因為類控制了...
JavaScript設計模式
設計模式是什麼?設計模式就是一套被反覆使用 多數人知曉的 經過分類編目的 設計經驗的總結。為什麼要使用設計模式?設計模式可重用 讓 更容易被他人理解 保證 可靠性,設計模式使 編制真正工程化。設計模式怎麼來的?設計模式概念是由四人幫 設計模式 可復用物件導向軟體的基礎 的四位作者 提出,總共分成了三...