设计模式---单例模式

99 阅读1分钟

在js里面有许多设计模式

比如:单例模式

用生动形象的语言,就是同一时间只存在一个

你点击你电脑屏幕下方的任务栏

image.png

选择任务管理器

就会出现如下窗口

image.png

如果你依此步骤再次打开任务管理器,你会发现,打开的依然是之前的那个,并不会因此增加一个新的任务管理器窗口

但是如果,你打开其他应用,比如浏览器,编辑器,重复打开,那么打开的窗口却会相应的增加

以下是相关代码

let singleton = function () {
      let div;
      return function () {
        if (!div) {
          div = document.createElement("div");
          document.body.appendChild(div);
          div.innerHTML = "只会产生一个div";
        }

      }
    }()

    let div1 = singleton();
    let div2 = singleton();
    let div3 = singleton();

    document.write(div1 == div2)
    document.write('<br/>')
    document.write(div3 == div2)

参考文献:

mp.weixin.qq.com/s/N8PGG4WEd…