首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件开发 >

js设计方式一 单体模式

2012-10-30 
js设计模式一 单体模式var Pserson{_age:10,_name:defaultName,_setAge:function(){},_setName:functio

js设计模式一 单体模式

var Pserson={   _age:10,   _name:'defaultName',   _setAge:function(){},   _setName:function(){},  getName:function(){}}
?

单体模式应该是javascript中最基本的设计模式。

可以用来划分命名空间,减少全局变量的数目。因为单体只会被创建实例化一次,所以你不用担心自己在构造函数中声明了多少成员。每个方法和属性只会被创建一次。所以单体模式一般是用于不会重复使用的功能模块的封装。比如附件上传控件,比如xhr对象创建封装等类似的功能。

单体模式的基本结构

?

var Person={   attribute1:true,   attribute2:false,   method1:function(){},    method2:function(arg){}   }

?这就是单体模式的基本结构,可以对单体进行修改,可以添加新的成员。单体对象由俩部分组成1.属性。2.方法

拥有私有成员的单体。

一般用以下方法来进行创建

1.使用下划线表示法 :使用下划线表示该属性和方法为私有方法,不提倡调用,但从语法和访问范围上都是可以调用的

?

2.使用闭包:采用该方式来进行封装的比较流行。而且是声明时进行立即初始化,如果当构造函数过于复杂,又不希望立即加载的话,可以进行改造成惰性加载。其实就是将整个对象的初始化过程用另外一个函数进行封装,然后暴露给外面的调用者,外面的调用者在需要使用该对象时,再进行初始化

var Person=(function(){           var age=10;           var name="test";           var setAge=function(){           }           return {           getName:function(){          },         getAge:function(){             }             }})()
?

?

?

热点排行