javascript实现aop

Posted Cyrus_Br

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript实现aop相关的知识,希望对你有一定的参考价值。

javascript实现aop的基本实现原理

        Function.prototype.before = function(beforefn){
            var _this = this; //  记录原函数的引用
            return function(){
                beforefn.apply(this, arguments);
                return _this.apply(this, arguments);
            }
        }

        Function.prototype.after = function(afterfn){
            var _this = this;
            return function(){
                var ret = _this.apply(this, arguments);
                afterfn.apply(this, arguments);
                return ret;
            }
        }

        var fun = function(){
            console.log("我是测试函数");
        }

        fun = fun.before(function(){
            console.log("之前执行");
        }).after(function(){
            console.log("之后执行");
        })

        fun();

以上是关于javascript实现aop的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript - 代码片段,Snippets,Gist

几个有用的JavaScript/jQuery代码片段(转)

JavaScript实用功能代码片段

spring aop中this和target区别

javascript实现aop

JavaScript实现AOP(面向切面编程)