我正在尝试记录对Web应用程序中的函数的调用。 我试图指定要记录为字符串数组的函数。 在下面的例子中,我试图在调用函数'a'时调用函数'b'。 只要调用函数“a”,函数日志就会导致函数“b”运行。 除非动态更改,否则不得更改函数“a”。
function a(){
alert('a');
}
function b(){
alert('b');
}
function log(functionToLog){
var acopy = eval(functionToLog);
eval(functionToLog) = function(){
b();
acopy();
}
}
log('a');
a();
我做了一个jsFiddle:http://jsfiddle.net/6kyRD/5/
小提琴的所需回复是,警告框中带有'b',然后是带有'a'的警告框。
此代码失败,因为我无法分配给eval。 但我需要分配给'a'指定的函数而不是副本,以便在调用a时运行我的函数'b'。