首页 > 其他 > 详细

改造业务代码

时间:2017-05-19 23:04:54      阅读:238      评论:0      收藏:0      [点我收藏+]

新手程序员,很容易犯写出面向过程的,留下很多全局变量的代码的错误。现在是时候简单的改进一下了。

    //函数原型添加一个addMethod方法,现在所有的函数都有addMethod方法了。
    Function.prototype.addMethod = function(name,fn){
        this[name] = fn;
        //在下面的的代码中,this指向methods函数。所以可以链式调用
        return this;
    };
    
    //等同于 var methods = new Function(){};
    var methods = function(){
    };
    methods
        .addMethod(‘checkName‘,function(){            console.log(‘检查了名字‘);
            return this;
        })
        .addMethod(‘checkPhone‘,function(){
            console.log(‘检查了手机‘);
            return this;
        });

    methods.checkName().checkPhone();
    //全局变量只有一个methods。这样就避免了全局变量污染。同时还有jQuery一样的链式调用。

 

 上面是函数式调用。还可以以类式的调用方式写。

 

    Function.prototype.addMethod = function(name,fn){
        this.prototype[name] = fn;
        return this;
    };

    var Methods = function(){};
    Methods
        .addMethod(‘checkName‘,function(){
            console.log(‘检查了名字‘);
            return this;
        })
        .addMethod(‘checkPhone‘,function(){
            console.log(‘检查了手机‘);
            return this;
        });

    var method=new Methods();
    method.checkName().checkPhone();

 

改造业务代码

原文:http://www.cnblogs.com/liaozhenting/p/6880428.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!