線上 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、一次性檔案,以及進入完整建置流程前的除錯輸出。