我可以代理在做這樣的事情的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