JavaScript函数可以自动检测并记录其执行周期吗



假设我想知道函数完成其执行周期所花费的执行时间,我知道我需要运行:

function runcycle(){
console.time('runcycle', console.log('runcycle started'));
//function body
return console.timeEnd('runcycle');
}

然而,这是手动和繁琐的,尤其是如果我有多个功能,所以我的问题是:

JavaScript函数是否可以运行有关其执行的自动计时器消息

好吧,似乎有一个简单的解决方法可以实现函数执行的自动记录器,那就是创建一个辅助函数,将所有函数封装在一个主机函数中:

function logfunc(func, fname){
return function(){
console.time(fname, console.log(fname, 'started'));
let r = func();
console.timeEnd(fname);
return r;
}
}
/* And the helper logfunc can be utilized as: */
let test = logfunc(()=>{//funcbody}, 'test');
/* test() will run normally, but with logger capabilities */
test();
}

尽管这是可行的,但我仍然愿意学习JavaScript是否有内置的函数自动记录器。

最新更新