js设计模式:单例模式

作用:

保证一个类只有一个实例,并且提供一个全局的访问位置。

可以用来实现全局的一些状态管理或者独一无二的数据

示例:

javascript 复制代码
      class Wjt{
        constructor(name,idNumber,gender){
           this.name = name
           this.idNumber = idNumber
           this.gender = gender
        }
        //可以直接使用Wjt调用的静态方法
        static getInstance(name,idNumber,gender){
            if(!this.instance){
                this.instance = new Wjt(name,idNumber,gender)
            }
            return this.instance
        }
      }
        
        //王惊涛注册户籍
        const wjt1 = Wjt.getInstance('王惊涛','123456789','man')
        //再次注册户籍
        const wjt2 = Wjt.getInstance('新惊涛','987654321','man')
        console.log(wjt1,'wjt1')
        console.log(wjt2,'wjt2')
        console.log(wjt1 === wjt2)  //true 
        //第一次已经注册成功了,instance已经有了固定的值,wjt已经存在于这个世界上了,且是唯一不可变的,所以用单例模式
相关推荐
xiaodaidai丶1 小时前
设计模式之策略模式
设计模式·策略模式
_院长大人_2 小时前
设计模式-工厂模式
java·开发语言·设计模式
王道长服务器 | 亚马逊云17 小时前
AWS + 苹果CMS:影视站建站的高效组合方案
服务器·数据库·搜索引擎·设计模式·云计算·aws
在未来等你18 小时前
AI Agent设计模式 Day 1:ReAct模式:推理与行动的完美结合
设计模式·llm·react·ai agent·plan-and-execute
乐悠小码1 天前
Java设计模式精讲---03建造者模式
java·设计模式·建造者模式
_院长大人_1 天前
设计模式-代理模式
设计模式·代理模式
guangzan1 天前
TypeScript 中的单例模式
设计模式
乐悠小码2 天前
Java设计模式精讲---02抽象工厂模式
java·设计模式·抽象工厂模式
搬山.摧城2 天前
线程池和单例模式
开发语言·单例模式
乙己4073 天前
设计模式——原型模式(prototype)
设计模式·原型模式