简单工厂模式

 原始写法:

    var LoginAlert=function(text){
        this.content=text
    }

    LoginAlert.prototype.show=function(){

    }

    var userNameAlert=new LoginAlert('用户名不能多于16个字母或数字')
    userNameAlert.show()

    var passwordAlert=new LoginAlert('输入密码不正确!')
    passwordAlert.show()

    var loginconfirm=function(text){
        this.content=text
    }

    loginconfirm.prototype.show=function(){

    }

    var loginFailconfirm=new loginconfirm("你的用户名不存在,请重新输入")
    loginFailconfirm.show()

简单工厂模式写法1:

    var Basketball=function(){
        this.intro='篮球盛行于美国'
    }

    Basketball.prototype={
        getMember:function(){
            console.log("每队需要5名队员")
        },
        getBallsize:function(){
            console.log('篮球很大')
        }
    }

    var Football=function(){
        this.intro='足球世界范围内流行'
    }

    Football.prototype={
        getMember:function(){
            console.log("每个队伍需要11名队员")
        },
        getBallsize:function(){
            console.log("足球很大")
        }
    }

    var Tennis=function(){
        this.intro='每年有很多网球系列赛'
    }

    Tennis.prototype={
        getMember:function(){
            console.log('每个队伍需要1名队员')
        },
        getBallsize:function(){
            console.log('网球很小')
        }
    }

    var sportsFactory=function(name){
        switch(name){
            case 'NBA':
                return new Basketball();
            case 'wordcup':
                return new Football();
            case 'Frenchopen':
                return new Tennis();
        }
    }

    var footnall=sportsFactory('wordcup')
    console.log(footnall)
    console.log(footnall.intro)
    footnall.getMember()

简单工厂模式写法2:

    function createPop(type,text){
        var o=new object()
        o.content=text;
        o.show=function(){

        };
        if(type=='alert'){

        }

        if(type=='prompt'){

        }

        if(type=='confirm'){

        }

        return o;
    }

    var userNameAlert=createPop('alert','用户名只能是26个字母和数字')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值