Javascript 自动向每个函数添加console.log-第2部分
此处发布的解决方案的后续问题: 这对于获取调用的函数名非常有用:Javascript 自动向每个函数添加console.log-第2部分,javascript,function,logging,hook,Javascript,Function,Logging,Hook,此处发布的解决方案的后续问题: 这对于获取调用的函数名非常有用: function augment(withFn) { var name, fn; for (name in window) { fn = window[name]; if (typeof fn === 'function') { window[name] = (function(name, fn) { var args = arguments; re
function augment(withFn) {
var name, fn;
for (name in window) {
fn = window[name];
if (typeof fn === 'function') {
window[name] = (function(name, fn) {
var args = arguments;
return function() {
withFn.apply(this, args);
return fn.apply(this, arguments);
}
})(name, fn);
}
}
}
您还可以列出提供给被调用函数的参数吗?如果您阅读代码,您可以看到正在使用参数调用fn,这就是您希望在函数中使用的参数。因此,只需将其添加到args:
withFn.apply(this, Array.from(args).concat([arguments]));
啊哈-谢谢。我知道参数在那里,但没有连接。干杯对于在Max/MSP中执行此操作的任何人,Array.from(args)不可用,因此请改用arrayfromargs(args)。