concat和uglify之间的区别是什么?

时间:2013-10-30 21:49:58

标签: concatenation gruntjs minify uglifyjs

在grunt中concat,uglify和minify任务之间有什么区别?我为我所有网站的javascript任务设置了一个uglify任务,它似乎都缩小并连接它们。 Grunt的网站对如何配置每项任务有很好的描述,但它似乎并不能解释每项任务的实际作用。

2 个答案:

答案 0 :(得分:92)

  • 连接只是将所有静态文件附加到一个大文件

  • 缩小只是删除不必要的空格和冗余/可选的令牌,如卷曲和分号,并且可以通过使用linter来反转。

    < / LI>
  • Uglification 将代码转换为“不可读”形式的行为,即重命名变量/函数以隐藏原始意图......它也是不可逆转的。

答案 1 :(得分:9)

连接 - 合并所有指定的文件以创建新的单个文件。

缩小 - 这意味着将删除所有不必要的空格和冗余的可选标记。

示例 - self.description =&#39;您好&#39; 缩小版将是 - self.description =&#39; Hello&#39;

Uglification - 它只是意味着将代码转换为核心逻辑无法轻易理解的格式。为了做同样的事情,它重命名变量及其引用,它用较短的名称重命名参数等。它简单地模糊了业务逻辑,以便没有人能够轻易地理解它。

示例 -

self.description = 'Hello';
function(self.description){}

Uglified版本将是 -

  j.description = 'Hello';
  function(j.description){}