我可以代理在做这样的事情的javascript功能单一(只是从内存记下来,多多包涵)在JavaScript中的动态代理?
function addAroundAdvice(target){
var targetFunction = target.aFunction;
target.aFunction = new function(){
invokePreCall();
targetFunction.apply(target, arguments);
invokePostCall();
}
}
作为一个Java程序员我认为这是一个动态代理。每次我写这样的代码时,我认为有人必须做出一个非常聪明的库,它执行的常见代理操作至少比我能够匆忙做的要好10%。我期待一些东西,比如正确拦截任何给定对象的所有方法,这可能不是完全无关紧要的。然后有不同类型的建议。所以虽然我不期待scriptaculous的大小,但它肯定超过6行代码。
那么这些库在哪里?
这将有助于了解你想要达到的目标。 – cletus 2009-02-20 07:16:16
我自己没有见过他们,但我有NIH倾向... – 2009-02-20 07:28:40
我还是没有明白道理:你想让图书馆为你节省6行代码?图书馆在Javascript中的成本很高(而在C#/ Java中,你似乎拥有它们只是因为你可以)。我不能说我曾经需要在Javascript中编写建议。 – cletus 2009-02-20 07:35:15