【发布时间】:2021-08-19 03:51:42
【问题描述】:
我正在关注这个article。我了解单例模式是什么,但我无法理解代码。
let Singleton = (function(){
let instance = null;
function createInstance() {
let obj = new Object("I am the new instance");
return obj;
}
return {
getInstance:function() {
console.log(instance);
if(instance === null) {
instance = createInstance();
}
return instance;
}
}
})();
function test() {
let instance1 = Singleton.getInstance();
let instance2 = Singleton.getInstance();
console.log(Object.is(instance1,instance2));
}
test();
为什么instance1 和instance2 相同,我们总是将实例初始化为null,每当我们调用Singleton。
【问题讨论】:
标签: javascript design-patterns singleton