![](/img/trans.png)
[英]What's the best way to show (un/ordered) HTML lists as a top-down tree?
[英]javascript profiling: way of showing top-down tree for individual function?
假设我有一个函数OfInterest,由函数A和B调用,并且调用了函数X和Y。我正在寻找一种查看方式:
OfInterest -- 200 ms total time
X -- 150 ms total time
Y -- 50 ms total time
...这样它既包括A和B对OfInterest的调用。
在Chrome分析器中,这是OfInterest的自顶向下放大视图,只是AFAIK无法同时包含A和B到OfInterest的调用。 自下而上的视图为OfInterest获得了正确的总时间,但是AFAIK无法在该视图中看到X +Y。
有没有办法让Chrome将其吐出来,或者使用其他分析器(例如Firebug)来查看?
这个github项目为jvascript调用统计提供了自上而下的树
https://github.com/brucespang/jsprof
当我在寻找javascript函数调用事件探查器时,我发现了一个小脚本,可以根据需要对其进行修改,该脚本非常简单,它将显示该窗口对象中所有全局函数的统计信息,尽管它没有列出称为的嵌套函数的名称。
函数callLog(){
var functionPool = {}
for( var func in window )
{
if (typeof(window[func]) === 'function')
{
functionPool[func] = window[func];
(function(){
var functionName = func;
var totalTime= 0;
var noOfTimes =0;
var minTime= 0;
var maxTime =0;
window[functionName] = function(){
var args = [].splice.call(arguments,0);
var startTime = +new Date;
functionPool[functionName].apply(window, args );
var duration = new Date - startTime;
if (duration> maxTime)
maxTime= duration;
if (duration< minTime)
minTime= duration;
totalTime = totalTime + duration;
noOfTimes++ ;
console.log('Executed: ' + functionName + '('+args.join(',')+')' + " Time[" + duration + "ms]"+" Total Time[" + totalTime +"ms]" +" No of Times[" + noOfTimes + "]" + "max Time [" + maxTime+ "ms]" + "min Time [" +minTime +"ms]");
}
})();
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.