2014-01-13 20 views
1

我想要接近一个JavaScript对象,我可以重定向到这个对象的任何调用到一个特定的方法,这意味着例如。如何捕捉或挂钩在javascript中的对象的任何调用

var A = {} 
A.prototype.proxy = function() { 
//do... 
} 
b = new A(); 
b.myMethod(); // --> Internally will call A.proxy()? 

然后,我将所有调用重定向到A.proxy()这是可能的JavaScript?

+1

是的,但是您可能需要为所有要监视/挂接的方法编写代理。 – techfoobar

回答

-1

不,它不是。核心JS语言没有这样的功能。

+0

那么经过深入研究,Moz的已经实现并且是ECMA-6呼叫代理的目标https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy – Agus

+0

经过深入的研究,你发现和实验性的未来,只支持在Firefox中,但似乎你不明白这个问题。正如文档所述:“代理是新对象;不可能”代理“现有对象。”问题是询问是否可以直接调用现有对象上的任何函数。所以这个问题的严格答案是否定的。 – spectre