缩小如何处理$scope.obj.subObj = { key: val ...};
据我了解,最后使用的变量保持不变,
但如果我有 html 元素
<div>{{obj.subObj.key}}</div>
缩小的结果会将代码缩短为 abckey 吗?请原谅我以业余方式询问,但我试图了解 javascript 缩小是如何工作的。
缩小如何处理$scope.obj.subObj = { key: val ...};
据我了解,最后使用的变量保持不变,
但如果我有 html 元素
<div>{{obj.subObj.key}}</div>
缩小的结果会将代码缩短为 abckey 吗?请原谅我以业余方式询问,但我试图了解 javascript 缩小是如何工作的。
来自:http://en.wikipedia.org/wiki/Minification_(programming)
在计算机编程语言,尤其是 JavaScript 中,缩小(也称为最小化或最小化)是在不改变其功能的情况下从源代码中删除所有不必要字符的过程。
因此,如果缩小器能够检测到它可以安全地重写它$scope.obj.subObj
,a.b.c
它就会。
但是,根据经验,来自全局范围的任何变量,例如document
,window
或jQuery
不会被缩小,因为其他代码(在此文件范围之外)可能依赖于它。
缩小的下一步是使用像 Google Closure Compiler 或 Yahoo 的 YUI Compressor 这样的压缩器。这些程序通常是更强大的缩小器。例如,他们可以用内联函数替换函数调用,或者用更短或更快的方法更改某个方法。这需要大量关于 JavaScript 和性能优化的知识。
您可以通过降低某些兼容性要求来提高压缩率,但我发现生成的代码非常不稳定,所以我认为我们还没有达到 :)