javascript - 缩小是如何工作的,它会影响 Angular 嵌套对象吗?

标签 javascript angularjs minify

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

据我了解,最后使用的变量保持不变,

但是如果我要有 html 元素

<div>{{obj.subObj.key}}</div>

minify 的结果是否会将代码缩短为 a.b.c.key? 请原谅我以业余方式提问,但我正在尝试了解 javascript 缩小的工作原理。

最佳答案

发件人:http://en.wikipedia.org/wiki/Minification_(programming)

Minification (also minimisation or minimization), in computer programming languages and especially JavaScript, is the process of removing all unnecessary characters from source code, without changing its functionality.

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

根据经验,任何来自全局范围的变量,如 documentwindowjQuery 都不会被缩小因为其他代码(超出此文件的范围)可能依赖于它。

压缩的下一步是使用压缩器,例如 Google Closure Compiler 或 Yahoo 的 YUI Compressor。这些程序通常是更强大的压缩器。例如,他们可以用内联函数替换函数调用,或者用更短或更快的方法更改某个方法。这需要大量关于 JavaScript 和性能优化的知识。

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

关于javascript - 缩小是如何工作的,它会影响 Angular 嵌套对象吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17281171/

相关文章:

javascript - 如何从另一个指令访问指令的 DOM 元素?

javascript - 为了提高网站加载速度,我们应该瞄准什么 : decreasing http requests/saving overall page size?

css - Visual Studio Bundler & Minifier - 从 CSS 中删除重要命令

javascript - 如果我想创建一个 AJAX 聊天,应该使用什么通信技术来保持可扩展性?

javascript - 如何使用jquery有效隐藏其他同伴div

javascript - 使用注入(inject)在 Angular 中进行错误处理

css - 如何更改 angularJS 的默认 css 样式?搜索框等

javascript - 使用 require.js 混淆单个非模块化 javascript 文件

javascript - 更改事件时输入元素的样式边框

javascript - 如何开始使用 ES6。 Chrome 会自动启用吗?