Example of Singleton

for Stepan Suvorov Blog js4.it/blog

by Stepan Suvorov

JavaScript

var mySingleton = (function(){ 
    
  var instance, 
      i = 5; //private property
    
  function init(){
      return {
          //public method
          up: function(){
              return ++i;
          }
      }
  }
   
  return {
    getInstance: function () {
      if ( !instance ) {
        instance = init();
      }
      return instance;
    }
  }
})();



var object1 = mySingleton.getInstance();
var object2 = mySingleton.getInstance();
console.log( object1 === object2 ); // true
console.log( object1.up() ); //6
console.log( object2.up() ); //7