// https://stackoverflow.com/a/36978360 class Singleton { private static _instance: Singleton; private constructor() { console.log("Instantiated"); } public static getInstance(): Singleton { console.log("getInstance()"); return this._instance || (this._instance = new this()); } } const i1 = Singleton.getInstance(); const i2 = Singleton.getInstance(); const i3 = Singleton.getInstance(); console.log(i1 === i2); console.log(i2 === i3); console.log(i1 === i3);