js设计模式—单例模式
来源:互联网 发布:台达plc编程入门 编辑:程序博客网 时间:2024/05/19 19:59
单例模式可以说是js中最常用的设计模式了,主要用来进行模块的管理,提供一个命名空间,以减少全局变量的定义,避免产生变量冲突。例如在团队项目开发的时候,我们可以为自己的代码定义一个命名空间:
var Tom = { eat: function(){ }, run: function(){ }, sleep: function(){ }}除此之外单例模式还常常被用来定义常量:
var CONF = (function(){ var conf = { MAX_NUM: 100, MIN_NUM: 1, COUNT: 1000 } return { //获取常量 get: function(name){ return conf[name] ? conf[name] : null; } }})();有时候单例对象需要延迟创建,并保证只实例化一次对象类:
var LazySingle = (function () { //单例实例引用 var _instance = null; //单例 function Single() { return { publicMethod: function () { }, publicProperty: '1.0' } } return function () { //如果未创建那么创建单例并返回,如果已经创建了那么直接返回 if (!_instance) { return Single(); } else { return _instance; } }})()
阅读全文