我最近在应用程序上遇到了一个响应缓慢的脚本错误,我觉得需要分析应用程序以确定我需要改进的地方。我想要一个长期的修复,而不是一个骇人听闻的修复。我尝试了 Firebug Profiler,但由于该应用程序使用了大量的 jQuery,我得到了很多关于匿名调用的报告,这是我真正预料到的。
我还在网上找到了一些关于由 John Resig 创建的分析器的报告,但我发现的链接都已失效。
所以我的问题是:
- 分析 jQuery 应用程序的最佳方法是什么?
- 是否有任何开源专用工具/脚本来实现这一目标?
我最近在应用程序上遇到了一个响应缓慢的脚本错误,我觉得需要分析应用程序以确定我需要改进的地方。我想要一个长期的修复,而不是一个骇人听闻的修复。我尝试了 Firebug Profiler,但由于该应用程序使用了大量的 jQuery,我得到了很多关于匿名调用的报告,这是我真正预料到的。
我还在网上找到了一些关于由 John Resig 创建的分析器的报告,但我发现的链接都已失效。
所以我的问题是:
因此,在挖掘了更多之后,我找到了 John Resig 给出的另一个解决方案。他正在使用一个名为 FireUnit(http://fireunit.org/) 的 firebug 单元测试扩展,这被证明是相当不错的。
如果您查看以下示例中的示例:
并检查他提供的测试页面:
你得到的是一些不错的结果,如下所示:
.addClass("测试"); 52
.addClass(“测试”);102
.removeClass(“测试”);102
.removeClass(“测试”);52
.css(“颜色”,“红色”);299 O(3n)
.css({color: "red", border: "1px solid red"}); 第597
章 198 O(2n)
.append(“测试”); 第599
章 第982
章 968 O(10n)
.html(“测试”);104
.empty(); 100
.is("div"); 109
.filter(“div”);214 O(2n)
.find(“div”);300 O(3n)
我已经设法将它集成到几个应用程序中,结果非常令人满意。唯一的缺点是您只能在 Firefox 中使用该插件。但这仍然是一个很好的工具。
如此处所述:
IE、Chrome 和 Safari 在浏览器附带的 Web 开发工具中内置了分析器。对于 Firefox,您可以使用 Firebug。也可能有用,因为您使用的是 jQuery,这意味着您的分析报告将充满匿名函数等,使其非常难以阅读,John Resig 的 jQuery 分析插件,它将为您提供更清晰的输出。
我创建了一个完全符合您需要的工具:http: //yellowlab.tools
启动测试,单击“JS Timeline”选项卡,它会记录在页面加载期间访问 DOM 的每个 jQuery 函数。它还跟踪 vanilla JS 函数,因此您可以了解 jQuery 背后的魔力。
对于帮助优化一些 jQuery 代码的性能非常有用。
希望我的回答不会太晚:)