单例模式(Singleton Pattern):
定义:保证一个类仅有一个实例,并提供一个访问它的全局访问点。 目的:阻止其他对象实例化其自己的单例对象的副本,从而确保所有对象都访问唯一实例。 场景:如一个系统中可以存在多个打印任务,但是同时只能有一个正在工作的任务。
例:JS代码实现
// 惰性单例 let lazySingle = (() => { let _instance = null // 单例 Single = () => { let privateAttribute = ‘我是私有属性‘ privateMethod = () => { // 私有方法 } return { publicMethod: () => { // 对外暴露方法 }, publicAttribute: ‘我是对外暴露属性‘ } } // 提供一个全局访问点 return () => { if (!_instance) { _instance = Single() } return _instance } })()
Git地址:https://github.com/skillnull/Design-Mode-Example
原文:https://www.cnblogs.com/Man-Dream-Necessary/p/11688340.html