设计模式-单例模式
介绍
单例模式:一次创建一个,我们可以配合闭包去使用。
- 单:单一的
- 例:实例
- 不管实例化多少次,用的都是一个实例
核心代码
let instance = null
function singleton(){
if(!instance) instance = 实例对象
return instance
}
也就是说我们在实例化构造函数之前会先进行判断,如果当前的标识不为空,则说明已经被实例过,则直接返回之前的实例对象即可,否则创建新的对象。
基础的单例模式
class Person {
constructor(name){
this.name = name
}
}
let instance = null
const singleTon = funtion(){
// 如果instance 没有则进行实例化,否则直接返回之前已经实例化好的instance
if(!instance) instance = new Person()
return instance
}
其实单例模式在我们的日常使用中是非常常见的,比如我们经常使用的layer中的弹窗组件,使用的就是单例模式,
也就是说我们创建了很多新的弹窗,使用的其实只是一开始那个实例对象。后面只是通过传递参数修改样式而已。