四虎精品视频-四虎精品成人免费网站-四虎黄色网-四虎国产视频-国产免费91-国产蜜臀97一区二区三区

JavaScript的單例模式 (singleton in Javascript)

單例模式的基本結(jié)構(gòu):
復(fù)制代碼 代碼如下:
MyNamespace.Singleton = function() {
return {};
}();

比如:
復(fù)制代碼 代碼如下:
MyNamespace.Singleton = (function() {
return { // Public members.
publicAttribute1: true,
publicAttribute2: 10,
publicMethod1: function() {
...
},
publicMethod2: function(args) {
...
}
};
})();

但是,上面的Singleton在代碼一加載的時候就已經(jīng)建立了,怎么延遲加載呢?想象C#里怎么實現(xiàn)單例的:)采用下面這種模式:
復(fù)制代碼 代碼如下:
MyNamespace.Singleton = (function() {
function constructor() { // All of the normal singleton code goes here.
...
}
return {
getInstance: function() {
// Control code goes here.
}
}
})();

具體來說,把創(chuàng)建單例的代碼放到constructor里,在首次調(diào)用的時候再實例化:
完整的代碼如下:
復(fù)制代碼 代碼如下:
MyNamespace.Singleton = (function() {
var uniqueInstance; // Private attribute that holds the single instance.
function constructor() { // All of the normal singleton code goes here.
...
}
return {
getInstance: function() {
if(!uniqueInstance) { // Instantiate only if the instance doesn't exist.
uniqueInstance = constructor();
}
return uniqueInstance;
}
}
})();

JavaScript技術(shù)JavaScript的單例模式 (singleton in Javascript),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 韩国最火女团的舞蹈| 精神空虚,贪图享乐的整改措施| 茶馆剧本完整版| 狗年电影| 伴生活| 石隽| 监视韩国电影播放| 尼基塔 电影| free gay movies| 媳妇的全盛时代| 任港秀| 加入民盟的好处和坏处| 蒙古小男孩唱哭全场| 纵情四海| 孤岛飞鹰演员表| 隐形变异作风问题清单及整改措施| 非常完美 电影| 牛奶奶油是什么奶油| 魏蔓| 歌曲《国家》歌词| 视频污污| 唐人街探案5 电影| 碟仙诡谭| 台湾早期经典怀旧内衣模特走秀| 假如我是一只鸟艾青诗选| 秀人网小逗逗集免费观看| 电影生化危机4| 变态的视频| 小熙| 直播惊魂夜| 深夜少妇| 纳尼亚传奇| 林子祥电影| gay movies| 网络谜踪2 电影| 夏天在哪儿仿写句子一年级| 电影英雄| 帕罗| 胡晶| 黑手党电影| 勇敢者|