首页 > 代码库 > javascript-单例模式
javascript-单例模式
单例模式笔记
也称为单体模式,只允许实例化一次的对象类
用法:
1.命名空间:用一个对象来规划一个命名空间,井井有条的管理对象上的属性和方法
2.静态变量管理:让创建的函数执行一次,创建的对象内保存静态变量通过取值器访问,将这个对象作为一个单例放在全局空间里作为静态变量单例对象供他人使用
3.惰性单例:有时需要单例对象需要延迟创建,这种延迟创建的形式称之为“惰性创建”
代码:
1 //命名空间 2 var Jt = { 3 //管理静态变量 4 Conf : (function(){ 5 var conf = { 6 MAX_NUM : 100, 7 MIN_NUM : 1, 8 COUNT : 1000 9 } 10 return { 11 get : function(name){ 12 return conf[name] ? conf[name] : null; 13 } 14 } 15 })(), 16 //惰性载入单例 17 LazySingle : (function(){ 18 var _instance = null; 19 function Single(){ 20 return { 21 publicMethod:function(){}, 22 publicProperty:‘1.0‘ 23 } 24 } 25 return function(){ 26 if(!_instance){ 27 _instance=Single(); 28 } 29 return _instance; 30 } 31 })() 32 }
静态变量测试
1 var maxNum=Jt.Conf.get(‘MAX_NUM‘); 2 console.log(maxNum);
惰性单例测试
1 console.log(Jt.LazySingle().publicProperty);
控制台显示结果
javascript-单例模式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。