我试图比较几个Javascript库的性能。尽管测量事务时间有助于确定库的工作性能,但它并不考虑下载和启动各个库所需的时间。我正在寻找除了使用诸如萤火虫等工具之外确定加载时间的最佳方法的建议。我希望能够设置一个受控环境,其中页面可以加载n次,同时捕获开始和结束时间。 Javascript库内容应该包含在页面中而不是包含文件中,还是有更好的方法?
答案 0 :(得分:1)
John Resig在开始任何事情之前阅读JavaScript Benchmark Quality上的这篇文章可能会帮助你。
之后,我建议您尝试从服务器请求javascript,获取并计算eval(responseJS);
所需的时间。这样,您只计算加载库所需的时间而不是加上从服务器下载所需的时间。
答案 1 :(得分:0)
库应该始终是一个外部文件,通过脚本标记包含在内,或者单独使用,也可以使用站点的脚本编写。缩小和打包的文件将具有较小的附件。通过CDN传送也是最佳的,因为CDN将缓存它。许多流行的框架都可以通过谷歌的CDN获得。
您不仅要考虑库,还要考虑使用库的应用程序。库中JS的质量(通常)是顶级的,但是如何利用这些库中的代码质量,甚至是图书馆作者可能无法开发的插件代码。您还必须查看正在使用的浏览器。尽管我们讨厌它,但大多数这些跨浏览器库都针对Internet Explorer的最佳性能进行了优化,因为它保留了85%以上的市场份额。
任何图书馆的表现都是一种折衷。决定什么是可以接受的,以便让你的应用程序做你想做的任何事情。