Javascript Static Singleton
Singleton pattern for Javascript
JavaScript
var SingletonTester = (function () {
//This is the actual singleton instance
function Singleton() {
this.name = "Singleton";
this.pointX = 16;
}
// this is our instance holder
var instance;
// this is an emulation of static variables and methods
var _static = {
name: 'SingletonTester',
// This is a method for getting an instance
// It returns a singleton instance of a singleton object
getInstance: function () {
if (instance === undefined) {
instance = new Singleton();
}
return instance;
}
};
return _static;
})();
var singletonTest = SingletonTester.getInstance();
console.log(singletonTest.pointX); // outputs 16
singletonTest.pointX = 15;
console.log(singletonTest.pointX); // outputs 15