单例设计模式
Posted 一声蔷薇udVkP
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单例设计模式相关的知识,希望对你有一定的参考价值。
什么是单例设计模式
1、保证一个类只能创建一个实例,并且提供访问他的全局访问点
例如:登录按钮,点击创建一次登录浮框,再点击不会创建,会返回刚才创建的浮框。常见的应用场景:线程池、全局缓存、浏览器window对象
通用的惰性单例具备以下特点
- 在需要的时候才创建
- 把管理单例和创建对象分为两个方法来实现
- 遵守单一责任原则
通用的惰性单例案例
封装一个通用的管理单例的方法,最后返回一个函数,用于惰性调用(这一个块是不变的,便于复用)
var getSingle = function(fn) { var result return function() { return result || (result = fn.apply(this, arguments)) } }
创建对象的方法(这个跟据具体情况创建)
var createDiv = function() { let div = document.createElement("div"); div.style.display = "none"; div.innerText = "输入密码登录" document.body.appendChild(div); return div }
使用单例
var createSingleLayer = getSingle(createDiv);
调用单例方法
document.getElementById("btn").onclick = function() { let div = createSingleLayer(); div.style.display = "block"; }
以上是关于单例设计模式的主要内容,如果未能解决你的问题,请参考以下文章