2010-08-29 85 views
1

我想了解所有这些工具是如何工作的,据我所知,他们改变变量的名称以实现更好的压缩。Packer,YUI压缩机等的行为

他们是否也更改对象的属性名称?我想他们不会,因为否则任何使用object[property]表示法,其中property动态计算,可能会失败。这是正确的吗?因此,在这种情况下,如果所有内容都只有一个全局变量的名称空间,那么在更改变量名称时就没有任何好处。这又合适吗?

回答

2

帕克不压缩的形式,用较短的令牌替换常用词。它根本不重命名。

像YUI Compressor这样的工具只改变局部变量(和参数),但你可以将常用对象存储在局部变量中以利用空间的考虑。 (另外,访问本地变量与将范围链爬到最高级别相比稍快。)

1

只有局部变量可以被重命名

0

YUI Compressor可以缩小JavaScript和层叠样式表。

它也可以选择性地混淆..但只有Javascript。

to explain the diferences ...

缩小:去除空白和注释。

混淆:也minifies,但它也将进行修改程序,改变变量,函数和成员的名字,使得程序更难理解,并进一步减少了讨价还价的大小

那么,我们为什么要缩小或混淆?在保持完全相同的功能的同时减小文件大小。

+0

你甚至读过这个问题吗? : -/ – Andrea 2010-09-25 18:13:34

+0

@andrea heh - 可爱..你读过我的回答吗?看看两个BOLDED部分....此外,我只评论了YUI Compressor ..不是Packer,因为我从来没有使用过。 – 2010-09-26 01:20:11

+0

根据其他答案,你写的是不正确的:并不是每个变量的名称都会改变,只有本地的。我已经知道缩小和混淆是什么;我的问题是针对这些工具在对象属性方面的行为。对不起,如果我的评论太苛刻了。 – Andrea 2010-09-26 17:53:50