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');
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章