在线 code minifier
当快速整理静态资源很重要时,压缩准备部署的 HTML、CSS、JavaScript 和 JSON。
压缩输出
为什么要 minify code?
加载更快
移除注释、空白和多余字符,可以在资源到达浏览器前降低传输大小。
带宽成本更低
较小资源可减少网站需要分发的数据量;静态文件跨页面、地区和活动重复使用时更有感。
解析工作较少
浏览器下载后仍需解析 response。较短数据负载可减少解析工作,尤其是 JavaScript 和大型 inline data。
更干净的静态输出
当你需要快速发布静态文件、营销页片段、embed、mock API response 或导出 demo,又不想跑完整 build 时,minification 很有用。
Minification vs obfuscation vs transfer compression
Minification
移除不必要字符,但不刻意改变逻辑结构。
Obfuscation
通过重新命名 identifiers 或改写逻辑形状,让人类更难阅读 code。
Gzip / Brotli
传输压缩会降低 transit bytes。它和 minification 互补,因为原始文件在压缩前就已更小更干净。
Tree shaking
在 build step 移除未使用 module,而不是只缩小最后生成的 code。
常见问题
压缩后 code 能重新变可读吗?
格式化工具可以恢复空白和换行,但注释和原始变量意图通常已丢失。
这个工具对私有 code 安全吗?
转换在浏览器中执行,所以 code 不需要上传到远端服务才能压缩。
Minification 可能弄坏 code 吗?
通常不应该,但格式错误输入或 edge case 仍可能生成需要测试的输出。正式环境前请先验证。
CDN 已使用 Brotli,还需要 minification 吗?
通常仍需要。Brotli 压缩传输大小,而 minification 会在压缩前、保存前、审阅前或嵌入前移除不必要 source characters。
应该在 build 时 minify 吗?
正式 app 应该在 build 时处理。这个工具较适合快速整理、静态片段、导出 demo、一次性文件,以及进入完整构建流程前的排错输出。