js單例模式的兩種方案
更新時間:2013年10月22日 15:58:14 作者:
這篇文章介紹了js單例模式的兩種方案,有需要的朋友可以參考一下
方案一:利用閉包的兩個作用,可以變通地讀到內(nèi)部的變量,二是可以讓這些變量始終在內(nèi)存中。
復制代碼 代碼如下:
//方案一
var SingletonTester = (function () {
//單例方法
function Singleton(args) {
var args = args || {};
this.name = 'SingletonTester'; //方法對外的屬性,另外一種方式就是返回對象
this.pointX = args.pointX || 6;
this.pointY = args.pointY || 10;
}
//單例實例
var instance;
//返回對象
return {
name: 'SingletonTester',
getInstance: function (args) {
if (instance === undefined) {
instance = new Singleton(args);
}
return instance;
}
};
})(); //直接執(zhí)行該方法
//測試
var test = SingletonTester.getInstance({ pointX: 5 });
console.log(test.pointX);
方案二:
復制代碼 代碼如下:
//方案二
function Universe() {
// 判斷是否存在實例
if (typeof Universe.instance === 'object') {
return Universe.instance;
}
// 其它內(nèi)容
this.start_time = 0;
this.bang = "Big";
// 緩存
Universe.instance = this;
// 隱式返回this
}
// 測試
var uni = new Universe();
var uni2 = new Universe();
console.log(uni === uni2); // true
相關(guān)文章
利用weixin-java-miniapp生成小程序碼并直接返回圖片文件流的方法
這篇文章主要介紹了利用weixin-java-miniapp生成小程序碼并直接返回圖片文件流的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-03-03Bootstrap Modal對話框如何在關(guān)閉時觸發(fā)事件
這篇文章主要為大家詳細介紹了Bootstrap Modal對話框如何在關(guān)閉時觸發(fā)事件,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-12-12javascript實現(xiàn)選中復選框后相關(guān)輸入框變灰不可用的方法
這篇文章主要介紹了javascript實現(xiàn)選中復選框后相關(guān)輸入框變灰不可用的方法,涉及javascript針對頁面元素屬性的相關(guān)操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-08-08Textbox控件注冊回車事件及觸發(fā)按鈕提交事件具體實現(xiàn)
Lyncplus客戶端中訪問Web頁面時遇到了TextBox控件回車自動完成按鈕的提交事件失效的情況,于是上網(wǎng)查找相關(guān)的介紹最終解決了這兩個問題,感興趣的你可以參考下或許對你有所幫助2013-03-03