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)。