【设计模式】JavaScript实现
单例模式
- 目的:保证一个类仅有一个实例,并提供一个访问它的全局访问点
懒汉模式
因为JavaScript是单线程的所以应该没有线程不安全的问题。
JavaScript也可以实现多线程的但是我还没有学到。
饿汉模式由于我不知道JavaScript怎么实现私有构造函数所以不会写。🧐
其实我自己也是半桶水,希望JavaScript潮人不吝赐教。
var Singleton = (function (){
var ClassA = function (a) {
this.a = a
};
var instance
return function (a) {
if (!instance) {
instance = new ClassA(a)
}
return instance
}
})()
var a = new Singleton('a')
var b = new Singleton('b')
console.log(a,b)
//ClassA { a: 'a' } ClassA { a: 'a' }