衡量Javascript性能

我正在尝试对我们的前端进行全面分析,我想知道是否有任何工具可以自动测量Javascript。

例如:

  • 执行函数(无需我在记录之前/之后手动输入日期对象)
  • 我页面上的哪个脚本最慢,为什么
  • 找出我需要优化的function
  • 我可以做任何jQuery改进(除了通过John Resig的jquery-profile.js
    • 我可以使用更好的选择器
    • 对某些对象进行记忆
    • 使用更好的function(例如:使用find因为它更快)

我正在为我的JS寻找一个分析器(以及一些同样适用于jQuery的东西),除了像Firebug,Chrome开发工具,Yslow / Page速度插件等等。我正在寻找比JSlint更好的东西或者jsPerf。

我在我的应用程序上运行New Relic,但它没有告诉我我的脚本缺少的位置。

我希望有一种更简单的方式来分析我的JS而不是手动操作。 我需要一个完整分析的解决方案,并给我一个包含指标的报告。

我想你正在寻找这样的东西:

https://developers.google.com/web-toolkit/speedtracer/

从doc intro到这个:

使用Speed Tracer,您可以更好地了解应用程序的时间花费。 这包括由JavaScript解析和执行,布局,CSS样式重新计算和选择器匹配,DOM事件处理,网络资源加载,计时器触发,XMLHttpRequest回调,绘制等引起的问题。

我最近遇到过这个,应该有助于衡量你的javascript代码性能 – http://www.html5rocks.com/en/tutorials/webperformance/usertiming/

你也可以通过Yahoo Boomrang检查一个javascript库。它是一个很棒的工具,用于捕获信标服务器上的用户体验并对其进行分类/分析。

这是我创建的工具:http: //yellowlab.tools

它加载一个带有PhantomJS的页面,并在页面加载时分析很多东西。 启动测试,然后单击“JS Timeline”选项卡。 您将找到与DOM交互的每个JS函数的日志,包括jQuery函数。

我用它来为我的客户审核JS代码,当你需要解开一些意大利面条代码或理解一些缩小的第三方小部件时,它是现有的最佳工具!

我真的怀疑你是否可以自动执行此操作,否则雇用高级开发人员来识别此类问题是没有意义的:)你可以做的是使用Chrome开发工具并使用CPU分析器和时间线工具手动检查你的页面,看看是什么在运行慢或什么造成内存泄漏。

祝好运