首页 > IT职业 > IT图书 > js单例模式的应用场景分析

应用场景
1、windows的任务管理器
2、多线程的线程池设计
3、全局缓存
4、浏览器的window对象
5、登录页面中的浮窗,无论点击多少次,浮窗仅仅会被创建一次,那么这个button应该使用单例模式来进行创建。
实例
单例模式模拟登录框。
class LoginForm {
constructor() {
this.state = 'hide'
}
show() {
if (this.state === 'show') {
alert('已经显示')
return
}
this.state = 'show'
console.log('登录框已显示')
}
hide() {
if (this.state === 'hide') {
alert('已经隐藏')
return
}
this.state = 'hide'
console.log('登录框已隐藏')
}
}
LoginForm.getInstance = (function () {
let instance
return function () {
if (!instance) {
instance = new LoginForm();
}
return instance
}
})()
// 一个页面中调用登录框
let login1 = LoginForm.getInstance()
login1.show()
// login1.hide()
// 另一个页面中调用登录框
let login2 = LoginForm.getInstance()
login2.show()
// 两者是否相等
console.log('login1 === login2', login1 === login2)
以上就是js单例模式的应用场景分析,希望对大家有所帮助。更多js学习指路:js教程
推荐操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4549/viewspace-2829679/ ,如需转载,请注明出处,否则将追究法律责任。