标签:UNC 设计 ons 设计模式-单例模式 code func 需要 ret cto
class Test{//只需要new 一次 并且在内部完成
constructor(name){
this.name = name
}
showName(){
alert(`name: ${this.name}`)
}
}
Test.aa = (function(){//定义一个静态方法 在内部new 出上面的实例
let a
return function(){
if(!a){
a = new Test('chenchen')
}
return a
}
})()
let obj1 = Test.aa()
obj1.showName()
let obj2 = Test.aa()
obj2.showName()
console.log('obj1 === obj2:', obj1 === obj2 )//true
console.log('----分割线----')
let obj3 = new Test('chengcheng')
obj3.showName()
console.log('obj1 === obj3:', obj1 === obj3 ) //false 多次new出来的实例对象不等
标签:UNC 设计 ons 设计模式-单例模式 code func 需要 ret cto
原文地址:https://www.cnblogs.com/yzyh/p/10305925.html