javascript中的动态代理?

kro*_*old 5 javascript

我可以通过做这样的事情代理javascript中的单个函数(只是从内存中记下来,所以请耐心等待)

function addAroundAdvice(target){
    var targetFunction = target.aFunction;
    target.aFunction = new function(){
           invokePreCall();
           targetFunction.apply(target, arguments);
           invokePostCall();
    }
}
Run Code Online (Sandbox Code Playgroud)

作为一名java程序员,我认为这是一个动态代理.每当我编写这样的代码时,我认为有人必须创建一个非常聪明的库来执行常见的代理操作,这比我能赶时间做的好10%.我期待一些东西,比如正确拦截任何给定对象的所有方法,这可能不是完全无关紧要的.然后有不同类型的建议.因此,虽然我并不期待像scriptaculous那么大的东西,但它肯定超过6行代码.

那么这些图书馆在哪里?

Ser*_*ipc 6

尝试jQuery AOP 插件

从源代码来看,似乎只使用 jQuery 作为命名空间,所以即使不想使用 jQuery,你也可以尝试这个插件。