同时进行缩小和丑化有意义吗?

Does it make sense to do both minify and uglify?

鉴于丑化过程中涉及一些缩小,同时进行缩小和丑化是否仍然有意义?如果是,应该先缩小还是丑化?只做丑化就够了吗?两者都做的话代码会不会更混乱?

两者之间没有真正的区别。甚至 Uglify 也称自己为缩小工具包。

比较 JS 缩小与 CSS 缩小时,区别可能更相关 - CSS 缩小仅涉及删除空格 - 原始代码保持不变。

使用 JS 不仅可以去除空格,还可以对代码进行转换,例如将变量名截断为单个字符。

缩小 JavaScript 不仅会使源代码更小,还会降低代码的可读性,或者使其变得模糊。但不要假设缩小或丑化,或任何你想称之为的安全措施是一种安全措施。这不是加密。代码 更难 阅读,但并非不可阅读,虽然通常不可能 return 缩小代码回到其原始形式,但可以 'beautify' 它并使其更具可读性。

缩小和丑化都没有意义,因为大多数缩小器都会删除空格和不必要的字符,还会混淆代码。您所做的只是引入另一个构建步骤。

Minifying 只是删除不必要的白色-space 和多余的评论和分号。并且可以在需要时将其反转回来。

Uglifying就是把代码变成"unreadable"形式,通过改变变量名、函数名等,隐藏原来的内容。一旦使用,就无法将其逆转。

一些像 UglifyJS 这样的库在使用时会通过删除不必要的部分来进行缩小。但总的来说,丑化会让代码变得不可读。

精简代码可加快页面加载速度,让访问者和搜索引擎满意,而且它也可读。大多数主流浏览器在执行前都会缩小代码。