1

我想在运行时包装任何 JavaScript 调用,例如,我想在日志中写入一个 Func 调用已经发生的日志。

这种包装必须适用于任何函数,即使是那些使用 eval 或原型添加的函数。

4

2 回答 2

1

您正在寻找的是节点代理

您不能使用本机 JS 做到这一点。这仅适用于node.js. 它可能可以调整为适用于在 V8 上运行的任何 js。

于 2011-03-03T12:57:59.533 回答
0

如果您要使用该方法调用您的函数call,您可以执行以下操作:

oldCall = Function.prototype.call;
Function.prototype.call = function(){
 // do some logging here
 oldCall.apply(this, arguments);
}
于 2011-03-03T14:21:14.330 回答