Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 缩小是如何工作的,它会影响角度嵌套对象吗?_Javascript_Angularjs_Minify - Fatal编程技术网

Javascript 缩小是如何工作的,它会影响角度嵌套对象吗?

Javascript 缩小是如何工作的,它会影响角度嵌套对象吗?,javascript,angularjs,minify,Javascript,Angularjs,Minify,缩小如何处理$scope.obj.subObj={key:val…} 据我所知,最后使用的变量保持不变 但如果我有html元素 <div>{{obj.subObj.key}}</div> {{obj.subObj.key} 缩小的结果是否会将代码缩短为a.b.c.密钥? 请原谅我以业余的方式提问,但我正试图了解javascript缩微是如何工作的。来自: 在计算机编程语言中,尤其是JavaScript中,缩小(也称为最小化或最小化)是在不改变其功能的情况下,从源代码中

缩小如何处理
$scope.obj.subObj={key:val…}

据我所知,最后使用的变量保持不变

但如果我有html元素

<div>{{obj.subObj.key}}</div>
{{obj.subObj.key}
缩小的结果是否会将代码缩短为a.b.c.密钥? 请原谅我以业余的方式提问,但我正试图了解javascript缩微是如何工作的。

来自:

在计算机编程语言中,尤其是JavaScript中,缩小(也称为最小化或最小化)是在不改变其功能的情况下,从源代码中删除所有不必要字符的过程

因此,如果微型服务器能够检测到它可以安全地将
$scope.obj.subObj
重写为
a.b.c
,它就会这样做

不过,根据经验,来自全局范围的任何变量,如
文档
窗口
jQuery
都不会缩小,因为其他代码(此文件范围之外)可能依赖于它

缩小的下一步是使用压缩程序,如谷歌闭包编译器或雅虎的YUI压缩程序。这些程序通常是更强大的迷你程序。例如,它们可以用内嵌函数替换函数调用,或者用更短或更快的方法更改某个方法。这需要大量关于JavaScript和性能优化的知识


您可以通过删除某些兼容性要求来提高压缩率,但我发现生成的代码非常不稳定,因此我认为我们还没有做到这一点:)

一个像样的缩小器不会缩短其他地方使用的公共属性。你用哪一个?你用哪一个工具缩小?有些工具压缩接口,有些则不压缩。例如,YUI压缩器不会更改全局变量及其内容的名称-只会缩小函数参数和局部变量名称。你可以安全地使用它。