单例模式

  • 定义:保证一个类只有一个实例,并提供一个访问该实例的全局节点
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class Singleton {
private static instance: Singleton
private constructor() {}
public static getInstance() {
if(!Singleton.instance) {
Singleton.instance = new Singleton
}
return Singleton.instance
}
}

const s1 = Singleton.getInstance();
const s2 = Singleton.getInstance();
console.log(s1 === s2) // true
  • 缺点:不利于单元测试