据我了解:
- 缩小浏览源代码并替换可用于更短变量的代码,删除空格,进行一些代码替换优化(有时)。
- gzip重复删除代码
gzip + minfication不会相互矛盾吗?按理说,在缩小之后事情将更难以重复删除。
虽然gzip + minification导致文件较小。
为什么?
答案 0 :(得分:3)
允许缩小以永久更改您的代码。它可以是例如只需用变量名foobar
替换变量名a
,而不需要记住如何撤消缩小,它只能丢弃不需要的空格。但是,它不能减少浪费的空间,因为所有字符都使用相同的长度进行编码,或者因为在两个方法调用中使用相同的参数 - 毕竟,缩小的版本仍然需要是有效的代码。
压缩,例如使用gzip可以生成不再有效的javascript输出。因此,gzip可以例如编码具有不同长度的字符,以便花括号消耗少于8位,并且它可以压缩代码中的公共部分。但是,因为它需要能够恢复原始代码,所以它不能只是将变量重命名为更短的代码。
答案 1 :(得分:0)
那是因为保留的比较少。
缩小也将尽可能删除行尾,括号和其他冗余代码。冗余的代码不必压缩。这就是为什么它们不仅仅是两者中的一个。