js之單例模式

一、單例模式的概念
單例就是保證一個類只有一個實例,實現的方法一般是先判斷實例存在與否,如果存在直接返回,如果不存在就創建了再返回,這就確保了一個類只有一個實例對象。在JavaScript 裏,單例作爲一個命名空間提供者,從全局命名空間裏提供一個唯一的訪問點來訪問該對象。
二、模式作用
1、模塊間的通信
2、系統中某個類的對象只能存在一個
3、保護自己的屬性和方法
三、注意事項
1、注意this的使用
2、閉包容易造成內存泄漏,不需要的要趕快清理。
3、注意new的成本。
四、單例模式的實例

var xiaowang = (function(argument){
    var xiaowangjia = function(message){
        this.menling = message;
    }
    var men;
    return {
        sendMessage:function(message){
            if(!men){
                men = new xiaowangjia(message);
            }
            return men;
        }
    }
})();
var xiaoli = {
    callXiaowang:function(msg){
        var _xw = xiaowang.sendMessage(msg);
        console.log(_xw.menling);
        _xw = null;//等待垃圾回收
    }
}
xiaoli.callXiaowang('hellow');
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章