我运行了 Google Page Speed Insights,他们的主要建议是缩小js
文件,节省超过 70%(准确地说是从 423 KB 到 312 KB),这太疯狂了。
但是文件被缩小了!我错过了什么?
资源:
PS我已经解决了关于SO的其他类似问题,但都与我的问题不相似。
我运行了 Google Page Speed Insights,他们的主要建议是缩小js
文件,节省超过 70%(准确地说是从 423 KB 到 312 KB),这太疯狂了。
但是文件被缩小了!我错过了什么?
资源:
PS我已经解决了关于SO的其他类似问题,但都与我的问题不相似。
我建议浏览您的缩小文件并寻找人类可读的 JS 令牌。
据我所知,测试主要是看 JS 令牌长度。
/**
* @fileOverview Estimates minification savings by determining the ratio of parseable JS tokens to the
* length of the entire string. Though simple, this method is quite accurate at identifying whether
* a script was already minified and offers a relatively conservative minification estimate (our two
* primary goals).
*
* This audit only examines scripts that were independent network requests and not inlined or eval'd.
*
* See https://github.com/GoogleChrome/lighthouse/pull/3950#issue-277887798 for stats on accuracy.
*/
如果您在缩小文件中看到人类可读的标记,请尝试查看您的缩小器设置,看看是否有可以切换的选项来消除这些标记。
如果没有设置可以消除它们,请尝试确定它们的来源以及它们与其他成功缩小的令牌有何不同。罪魁祸首可能是编码模式、框架或转译器。
注意:源代码链接自他们的帮助页面(https://web.dev/unminified-javascript/)
它可以让您对大量问题有一个非常高层次的看法,但是一旦您开始优化事物,它就达不到要求了。它认为您的 js 文件很大,将其最小化会有所帮助。它实际上不能告诉您已经将其最小化。
我曾经告诉我对单个缓存的 2k SVG 文件使用 gzip 压缩。还有一次,它要求我缩小网站正在使用的 200 个左右的 12k jpeg。它不是很聪明-在第一种情况下它浪费了我的时间,在第二种情况下有一个更好的答案(使用精灵表),但它无法深入了解。