一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

JavaScript的單例模式 (singleton in Javascript)

單例模式的基本結構:
復制代碼 代碼如下:
MyNamespace.Singleton = function() {
return {};
}();

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

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

具體來說,把創建單例的代碼放到constructor里,在首次調用的時候再實例化:
完整的代碼如下:
復制代碼 代碼如下:
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技術JavaScript的單例模式 (singleton in Javascript),轉載需保留來源!

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

主站蜘蛛池模板: 在线观看91精品国产hd | 亭亭色| 精品色综合 | 午夜欧美性视频在线播放 | 欧美性与交视频在线观看 | 色视频在线看 | 热re91久久精品国产91热 | 国产v2ba最新在线观看 | 婷婷色爱区综合五月激情韩国 | 四川幻女一级毛片 | 无遮挡一级毛片视频 | 四虎必出精品亚洲高清 | 国产在线91观看免费观看 | 巨大欧美黑人xxxxbbbb | 国产一区高清视频 | sihu国产午夜精品一区二区三区 | 色吧欧美 | 欧美性一区 | 国产福利小视频在线播放 | 狠狠婷| 成人福利免费观看体验区 | 国产精品一区二区av | 能在线观看的一区二区三区 | 亚洲成在人网站天堂一区二区 | www.婷婷色| 婷婷狠狠干 | 国产精品欧美一区二区三区不卡 | 久久国产精品ww | 中文婷婷 | 精品精品精品 | 999精品视频在线 | 狠狠做久久深爱婷婷97动漫 | 日韩亚洲欧美日本精品va | 天天综合视频网 | 国产精品短视频 | 国产精品100页| 亚洲香蕉久久综合网 | 91麻豆精品激情在线观看最新 | 性天堂网 | 色老板最新网站视频地址 | 久久精品国产精品亚洲红杏 |