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已经存在于这个世界上了,且是唯一不可变的,所以用单例模式
相关推荐
千千寰宇12 小时前
[设计模式/Java/多线程] 设计模式之单例模式【9】
设计模式·操作系统-进程/线程/并发
此木|西贝19 小时前
【设计模式】原型模式
java·设计模式·原型模式
rainFFrain20 小时前
单例模式与线程安全
linux·运维·服务器·vscode·单例模式
高 朗1 天前
2025高频面试设计模型总结篇
设计模式·面试·职场和发展
UpUpUp……2 天前
特殊类的设计/单例模式
开发语言·c++·笔记·单例模式
Summer_Xu2 天前
模拟 Koa 中间件机制与洋葱模型
前端·设计模式·node.js
云徒川2 天前
【设计模式】原型模式
java·设计模式·原型模式
卡戎-caryon2 天前
【Linux网络与网络编程】03.UDP Socket编程
linux·服务器·网络·笔记·单例模式·udp·网络通信
huang_xiaoen2 天前
java设计模式之桥接模式(重生之我在地府当孟婆)
设计模式·桥接模式
HappyGame022 天前
设计模式-观察者模式
观察者模式·设计模式