【发布时间】:2010-09-21 00:34:20
【问题描述】:
我一直在尝试使用 Firebug 的分析器来更好地了解我们看到的一些 JavaScript 性能问题的根源,但我对输出有点困惑。
当我分析某些代码时,分析器会报告 Profile(464.323 毫秒,26,412 次调用)。我怀疑 464.323 毫秒是这 26,412 次调用的执行时间的总和。
但是,当我深入研究详细结果时,我看到单个结果的平均执行时间大于 464.323 毫秒,例如平均时间最长的结果报告以下详细信息:
Calls: **1**
Percent: **0%**
Own Time: **0.006 ms**
Time: **783.506 ms**
Avg: **783.506 ms**
Min: **783.506 ms**
Max: **783.506 ms**
另一个结果报告:
Calls: **4**
Percent: **0.01%**
Own Time: **0.032 ms**
Time: **785.279 ms**
Avg: **196.32 ms**
Min: **0.012 ms**
Max: **783.741 ms**
在这两个结果之间,时间结果的总和远大于 464.323。
那么,这些不同的数字是什么意思?我应该信任哪些?
【问题讨论】:
-
仅供参考,我仍然看到同样的问题,并且在一个不使用 AJAX 的页面上。我看到我的页面的总分析时间为 17 秒,控制台中的第一行的“时间”为 24 秒。我不知道如何解释。
-
我自己也注意到了。它发生在某些递归函数中,所以我猜测它可能是分别计算每个实例并将结果相加。
标签: javascript profiling firebug profiler