单例模式那块儿的例子不完整,s 和 s1 是不同的实例
来源:7-6 前端常用的设计模式和使用场景
![](http://img1.sycdn.imooc.com/user/533e4d00000171e602000200-100-100.jpg)
qq_Bu
2022-02-26
不好意思视频没看到最后,发现老师已经修正了。。。
这条评论可以忽略
class Foo {
private constructor () {}
static getInstance () {
return new Foo();
}
}
let f1 = Foo.getInstance();
let f2 = Foo.getInstance();
console.log(f1 === f2); // false
需要一个静态变量保存单例
class Foo {
private static instance: Foo | null = null;
private constructor () {}
static getInstance () {
if (!Foo.instance) {
Foo.instance = new Foo();
}
return Foo.instance;
}
}
let f1 = Foo.getInstance();
let f2 = Foo.getInstance();
console.log(f1 === f2); // true
写回答
1回答
-
双越
2022-02-27
哈哈,讲课的时候有时候自己也会忽略一些地方。但后面都会更正的。
312022-02-27
相似问题