简单工厂模式01

简单来说就是返回一个新对象 return new Factory(param)

    var Basketball=function(){
        this.intro="篮球流星于美国"
    }
    Basketball.prototype={
        getNum:function(){
            console.log("每个队伍需要三个人")
        },
        getBallSize:function(){
            console.log("篮球很大")
        }
    }

    var Football=function(){
        this.intro="足球流行于南美"
    }
    Football.prototype={
        getNum:function(){
            console.log("每个队伍需要11个人")
        },
        getBallSize:function(){
            console.log("足球很小")
        }
    }

    var Tennis=function(){
        this.intro="网球流星于英国"
    }
    Tennis.prototype={
        getNum:function(){
            console.log("每个队伍需要X个人")
        },
        getBallSize:function(){
            console.log("网球很大")
        }
    }

    var SportFactory=function(name){
        switch(name){
            case "NBA":
                return new Basketball();
            case "wordcup":
                return new Football();
            case "FreeOpen":
                return new Tennis();        
        }
    }

    var football=SportFactory("wordcup");

代码复用,可以用如下方式

    function createPop(type,text){
        var o=new Object();
        o.content=text;
        o.show=function(){
            //显示方法
        }
        if(type=="alert"){
            //警示框
        }
        if(type=="prompt"){
            //提示框
        }

        return o;
    }

    var userNameAlert=createPop("alert","用户名错误")

简单工厂模式

你可能感兴趣的:(简单工厂模式01)