当前位置:网站首页>js单例模式

js单例模式

2022-06-24 09:32:00 Time202051

class LoginForm {
    
    constructor() {
    
        this.state = 'hide'
    }
    show() {
    
        if (this.state == "show") {
    
            return
        }
        this.state = 'show'
        console.log("登录框显示");
    }
    hide() {
    
        if (this.state === 'hide') {
    
            return
        }
        this.state = 'hide'
        console.log("登录框隐藏");
    }
}

LoginForm.getInstance = (() => {
    
    let instance
    return () => {
    
        if (!instance) {
    
            instance = new LoginForm()
        }
        return instance
    }
})()
let login1 = LoginForm.getInstance()
login1.show()
let login2 = LoginForm.getInstance()
login2.hide()
console.log(login1 === login2)

在这里插入图片描述

原网站

版权声明
本文为[Time202051]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_45890414/article/details/119646477