JavaScript设计模式之单例模式

把描述同一个对象的属性和方法放在一个内存空间下,起到了分组作用,这样不同事物之间的属性即使属相名相同,相互也不会发生冲突.我们把这种分组编写代码的模式叫.做"单例模式".

例如:var person1 = {                 var person2 = {
          name: '李四',                   name: '张三',
           age: '17'                       age: '18'
         }                               }

 在单例模式下,person1和person2叫做"命名空间"

单例模式是项目开发中经常使用的一种模式,因为在项目开发中我们可以使用单例模式来进行"模块式开发".
模块式开发:对于一个比较大的项目来说,需要多人协作进行开发,我们会根据当前项目的需求划分为几个功能模块,每人负责一部分,同时进行开发,最后把每个人的代码进行合并.

   例如:
       //公共模块->一般由一个项目的大神来写
         var utils = {                 
           select:function(){
                  
             }                                           
         } ; 
      //页卡模块中的change->实现选项卡切换
         var tabRender = {                 
           change:function(){ 
             // 调用公共模块的方法                     
                utils.selector();
            }                                           
         } ;     
         //搜索模块中的change->搜索内容变化处理
         var searchRender = {                 
           change:function(){   
             //  自身中调用自己的方法,一般使用this             
                 this.change()
             }                                           
         } ;   

单例模式的缺点:不能实现批量生产 ,复用性差,冗余度高,可扩展性差

你可能感兴趣的:(JavaScript设计模式之单例模式)