前端设计模式-单例模式

本文详细介绍了单例模式的概念,强调了其确保类只有一个实例并提供全局访问点的核心特性。通过分析实现思路,指出在创建单例时需要注意的要点,包括构造函数的访问权限、静态工厂方法的使用。随后,通过一个简单的JavaScript示例展示了单例模式的应用,最后进行了总结,重申了单例模式在限制实例数量和提供全局访问方面的价值。
摘要由CSDN通过智能技术生成

一、单例模式

核心:确保只有一个实例,并提供全局访问 (注意:全局变量不是单例模式)

在单例模式的实现过程中,须要留神如下三点:

  1. 单例类的构造函数为公有
  2. 提供一个本身的动态公有成员变量
  3. 提供一个私有的动态工厂办法

二、实现思路

一般情况下,当我们创建了一个类(本质是构造函数)后,可以通过new关键字调用构造函数进而生成任意多的实例对象。像这样:

我们先 new 了一个 s1,又 new 了一个 s2,很明显 s1 和 s2 之间没有任何瓜葛,两者是相互独立的对象,各占一块内存空间。而单例模式想要做到的是,不管我们尝试去创建多少次,它都只给你返回第一次所创建的那唯一的一个实例。
要做到这一点,就需要构造函数具备判断自己是否已经创建过一个实例的能力。我们现在把这段判断逻辑写成一个静态方法(其实也可以直接写入构造函数的函数体里): 

三、简单 demo

 

 简单的一个类似垃圾小广告的弹框,部分代码如下:<

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值