简单工厂模式之前:简单的套路实现的

  在讲简单工厂模式之前,我们先看个例子:

  1.用几个函数去执行几个不同的弹出:

   function funA(){

        alert('a');
    }
    function funB(){
        alert('b');
    }
    function funC(){
        alert('c');
    }

  如果我们想要弹出a,b,c我们就需要调用不同的方法funA,funB,funC。但是如果我们想弹出的东西很多呢,每次调用都需要看是需要调用哪个方法js 抽象工厂模式,会不会很麻烦。所以我们可以再包一个方法来做处理js 抽象工厂模式,如下所示:

   function choose(type){

        switch(type){
            case 'funA' : funA(); break;
            case 'funB' : funB(); break;
            default : funC();
        }
    }

  如此一来,我们在调用的时候就统一使用choose这个方法了。

  而简单工厂模式就是基于这样一个简单的套路实现的。

  首先来看简单工厂模式的定义:Simple Factory,又叫静态工厂方法,由一个工厂对象决定创建某一种产品对象的实例。主要用来创建同一类对象。

  正规意义上而言,一个简单工厂需要具备的条件是这样的:

  抽象: 定义一个最初的对象(告诉你有这么一个东西);

  工厂: 用于创建对象,也即对象的大本营(告诉你这个东西是一堆宝箱,你可以选择要哪个);

  具体对象: 最具象的对象,也就是某个大本营(告诉你这个宝箱中都有什么)

  好吧,感觉是要贴点代码出来了~

  1.我们先创建一个person原型,代码如下:

<p><pre>var Person = function(name,methods){

if(arguments.length > 2){
    throw new Error(&#39;参数过多&#39;);
};
this.name    = name;
this.methods = [];
for(var i=0,l=methods.length;i
文章由官网发布,如若转载,请注明出处:https://www.veimoz.com/1761
0 评论
632

发表评论

!