JS单例模式

单例模式的定义是:保证一个类仅有一个实例,并提供一个访问它的全局访问点。
单例模式是一种常用的模式,有一些对象我们往往只需要一个,比如线程池、全局缓存、浏览器中的 window 对象等。在 JavaScript开发中,单例模式的用途同样非常广泛。试想一下,当我们单击登录按钮的时候,页面中会出现一个登录浮窗,而这个登录浮窗是唯一的,无论单击多少次登录按钮,这个浮窗都只会被创建一次,那么这个登录浮窗就适合用单例模式来创建。

let SingleTon = (html => {
    let instance;

    class SingleTon {
        constructor (html) {
            if (instance) {
                return instance;
            }
            this.html = html;
            instance = this;
            return instance;
        }
    }

    return SingleTon;
})();

let a = new SingleTon('aaa')
let b = new SingleTon('bbb')

console.log(a === b)

运行结果:true

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 为何要有单例模式书中有举出一个实际场景,当我们点击登陆按钮时,页面中可能会出现一个弹框,而这个弹框是唯一的,无论点...
    流动码文阅读 629评论 1 1
  • 单例模式 单例表示只存在一个这样的对象。单例模式是一种非常重要的设计模式,有很多经典的应用场景,比如说,网站的登录...
    bigtom阅读 312评论 0 0
  • 前端开发工程师必备系列-几个简单的JS单例模式 JavaScript单例模式 1. 单例模式 单例模式(Singl...
    WEB开发李家靖阅读 612评论 1 0
  • 1. 常见实现单例 要实现一个标准的单例模式并不复杂,无非是用一个变量来标志当前是否已经为某个类创建过对象,如果是...
    rocneal阅读 1,335评论 0 0
  • PyCharm是一款Python的编辑器,操作简单流畅,是Python开发的良好利器。 pyenv pyenv是个...
    耕地阅读 8,774评论 2 4

友情链接更多精彩内容