Singleton pattern
JavaScript
function MySingleton() {
if (!(this instanceof MySingleton)) {
throw "Use new";
}
var instance = MySingleton._instance;
if (undefined === instance) {
instance = this;
MySingleton._instance = instance;
}
return instance;
}
var a = new MySingleton();
var b = new MySingleton();
console.log(a === b); /// true