js 单例写法

js 简单的单例写法

话不多说,上代码

let instance = null;

class TClass {
  public a: string;
  constructor(str) {
    if (!instance) {  // singleton-design pattern
      instance = this;
    }
    instance.a = str;

    return instance;
  }
}

// ------------------------------------------------

test('singleton-design test', t => {

  const a = new TClass('3');

  const b = new TClass('4');

  t.is(a.a, '4')

  t.is(a, b)
})

欢迎拍砖,欢迎补充。