我使用uglifyJS缩小了我的Javascript和CSS文件,磁盘上的文件大小已大大减少。但是在检查网络标签中加载的资源的总时间时,使用Chrome开发者工具,我发现没有区别。缩小真的会提高性能吗?如果是,我该如何衡量呢?
答案 0 :(得分:5)
缩小可以提高性能,具体取决于您的JavaScript引擎。
例如,Chrome的V8优化编译器会自动inlines functions less than 600 characters long - 包括空格和注释。
假设我们有一个长度超过600个字符的函数:
function f() {
// A long comment... bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla
return 1;
}
缩小将此缩小为function f(){return 1}
。
如果我们现在调用这两个变体n次并比较 raw 和 minified 函数的性能,我们得到以下结果:
显然,缩小功能可以快速执行两次以上。
答案 1 :(得分:1)
它只改进了JS的大小,所以它的加载,但没有别的。 MinifyJS现在可能不那么有用了;除非你有很多JS脚本要加载你的页面。例如,如果你使用一些JS框架或库,那么最好使用它们的缩小版本,但对于你自己的单个脚本,它可能不那么有趣。
答案 2 :(得分:1)
缩小不会缩短执行时间。
然而,它大大减少了加载时间和所需的HTTP请求数量。
http://www.nczonline.net/blog/2009/07/07/javascript-minification-compression-and-performance/
答案 3 :(得分:0)
正如您自己的数据所示,使用现代带宽,缩小不会对总下载时间产生任何显着影响。甚至在渲染时间。可以显着降低总下载时间的是: