设计模式–单例模式

“苟日新,日日新,又日新”

很长时间没有更新blog了,最近打算整理总结一些过往和现在工作中用到技术和业务知识,打牢基础,提高系统性,总结学习计划如下(写给自己):

1.JavaScript设计模式

2.Web安全

3.框架Vue及React

4.其他

保持每周更新学习,同时将会辅助部分demo到LAB页

1. 定义

一个类只有一个实例,提供一个全局访问入口

2.范式

2.1 普通模式

const SinglePattern = (function () {
    let instance = null;
    return function (obj){
       if(!instance){
          instance = new SinglePattern(obj);
       }
       return instance;
    }
})

2.2 惰性模式

const lazySingle = function(fn) {
   let result = null;
   return function () {
      return result || (result = fn.apply(this,arguments));
   }
}

3.应用

在合适的场景创建唯一的一个对象,应用中将管理单例和创建对象分离分离解耦,即单例方法为全局通用,需要应用单例的地方调用即可

发表评论

电子邮件地址不会被公开。 必填项已用*标注