1

我运行了 Google Page Speed Insights,他们的主要建议是缩小js文件,节省超过 70%(准确地说是从 423 KB 到 312 KB),这太疯狂了。

但是文件被缩小了!我错过了什么?

资源:

PS我已经解决了关于SO的其他类似问题,但都与我的问题不相似。

4

2 回答 2

1

我建议浏览您的缩小文件并寻找人类可读的 JS 令牌。

据我所知,测试主要是看 JS 令牌长度。

https://github.com/GoogleChrome/lighthouse/blob/master/lighthouse-core/audits/byte-efficiency/unminified-javascript.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/

于 2020-08-21T17:34:06.687 回答
1

Google Page Speed Insights 应谨慎使用

它可以让您对大量问题有一个非常高层次的看法,但是一旦您开始优化事物,它就达不到要求了。它认为您的 js 文件很大,将其最小化会有所帮助。它实际上不能告诉您已经将其最小化。

我曾经告诉我对单个缓存的 2k SVG 文件使用 gzip 压缩。还有一次,它要求我缩小网站正在使用的 200 个左右的 12k jpeg。它不是很聪明-在第一种情况下它浪费了我的时间,在第二种情况下有一个更好的答案(使用精灵表),但它无法深入了解。

于 2019-10-08T19:32:42.203 回答