0

这似乎是一个愚蠢的问题,但是 Uglifier 不使用指针对外部函数的引用进行 uglify 有什么原因吗?

一个例子:

我正在处理的文件多次调用_gaq.push(). 我通过添加到文件的顶部来压缩它var _g=_gaq.push();。然后我更新对它的 12 个调用以使用_g指针。这并没有节省大量(84 字节),但每一点都有帮助,对吧?

我错过了什么吗,Ugliifiers 不这样做有什么原因吗?

4

1 回答 1

5

简而言之,因为代码被破坏的可能性太大。

假设您的意思是var _g=_gaq.push;,那么会想到两个可能的破损原因:

  1. 您已经更改了thisinside的值push。如果 的功能push取决于此,那么您就破坏了它。
  2. 如果在您将其分配给之后_gaq.push更改了值,那么您的代码将继续对值进行操作。_g
于 2015-12-17T17:03:17.617 回答