设计模式-工厂模式(JavaScript)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式-工厂模式(JavaScript)相关的知识,希望对你有一定的参考价值。

设计模式的学习我目前参考了张容铭的《javascript设计模式》,感谢。

我理解的设计模式是为了提高代码复用,增强扩展性的代码编写理念,所以无关乎编程语言。JavaSript是我感兴趣的语言,所以使用它来实现。

 

  • 简单工厂(Sample Factory)

又叫静态工厂,用于创建同一类对象。如弹出框分为警告、确认和对话框,它们公共的方法提取出来,不同之处分别处理。

 1 function createPop(type,text){
 2      var o = new object();
 3      o.content = text;
 4      o.show = function(){
 5             //todo
 6      };
 7 
 8      if(type == ‘alert‘){
 9             //todo
10      } else if(type == ‘conform‘){
11             //todo
12      } else if(type == ‘prompt‘){
13             //todo
14      }
15 }        

创建一个Alert:var nameAlert = new createPop(‘alert‘,‘请输入姓名!‘);

  • 工厂方法(Factory Method)

工厂方法是将创建对象的方法推迟到子类中。如一个工厂方法可以生产几种食品类。

 

 1 var foodFactory = function(type,count){
 2      if(this instanceof foodFactory){
 3            return new this[type](count);
 4      }
 5 }
 6 
 7 foodFactory.prototype = {
 8      Pie: function(count){
 9             //todo
10      },
11      Pizza: function(count){
12             //todo
13      },
14      Cake: function(count){
15             //todo
16      }
17 }

 

以上是关于设计模式-工厂模式(JavaScript)的主要内容,如果未能解决你的问题,请参考以下文章

《JavaScript设计模式 张》整理

Javascript设计模式第二课 神奇的魔术师——简单工厂模式

PHP面向对象之选择工厂和更新工厂

Javascript设计模式-工厂模式

JavaScript创建对象之单例工厂构造函数模式

javascript设计模式-工厂模式(简单工厂)