带有每条语句结果的 JavaScript 分析

zac*_*caj 6 javascript firebug profiling google-chrome-devtools firefox-developer-tools

我有一个高度递归的 JavaScript 函数,它不调用其他 JavaScript 函数。它只是一个调用自身的函数,执行一些简单的逻辑并调用系统函数(Array.sliceArray.spliceArray.push等)。

我正在尝试优化它,但是 Chrome 和 Firefox(该网站唯一可以使用的浏览器)DevTools 和 Firebug 的分析器不会显示比函数调用更具体的内容。Visual Studio 有一个很好的功能,在分析应用程序后,它会告诉您函数的每一行花费了多少执行百分比,这非常有帮助。

我尝试将函数分解为更小的函数,但随后函数调用开销会膨胀,占用了我的大部分执行时间。

Seb*_*ner 1

Firebug 和 DevTools 的分析器为您提供有关每个函数花费了多少时间的详细信息。请参阅以下屏幕截图:

Firebug自己的时间栏) Firebug 中的分析器输出

Firefox DevTools自拍时间栏) Firefox DevTools 中的分析器输出

Chrome DevTools专栏) Chrome DevTools 中的分析器输出

Firefox DevTools 还允许您通过启用“性能”面板选项中的“显示 Gecko 平台数据”选项来包含平台数据:

Firefox DevTools *性能* 面板选项包含 Gecko 平台数据

尽管这些工具仅显示每个功能的数据。它们不允许您显示每行,或者更准确地说,每条语句的信息,可能是因为这是 JavaScript 作者无法直接影响的东西。

如果您认为此信息可能与 JavaScript 作者相关,您应该为每个工具提交请求以实现此功能,并解释其背后的原因。