首页 > 代码库 > 设计模式之单例模式

设计模式之单例模式

介绍

单例就是保证一个类仅有一个实例,并提供一个访问它的全局访问点。单例模式的要点有三个;一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。实现的方法一般是先判断实例存在与否,如果存在直接返回,如果不存在就创建了再返回,这就确保了一个类只有一个实例对象。

实现方式

 

  var singleton = (function(){
    var instance;
    function init(){
      function privateMethod(){
        console.log(‘privateMethod‘);
      }
      var privateVar = ‘privateVar‘;
      return {
        publicMethod : function() {
          console.log(‘publicMethod‘);
        },
        publicVar : ‘publicVar‘
      }
    }

    return {
        getInstance : function () {
          if(!instance){
            instance = init();
          }
          return instance;
        }
    }
  })();

  var n1 = singleton.getInstance();
  var n2 = singleton.getInstance();
  console.log(n1 === n2)

 

设计模式之单例模式