本文へスキップ
SPCXTools

JavaScript ミニファイア

TerserでJavaScriptを圧縮 — 動作はそのままにファイルサイズを削減します。

ローカルで動作 — ファイルは端末から出ません

ツールを読み込み中…

JavaScript ミニファイアの使い方

  1. 1入力ボックスにJavaScriptを貼り付けるか、サンプルをクリックします。
  2. 2圧縮されたコードが右側に自動的に表示されます。
  3. 3変数名の短縮や、ライセンスコメントの保持を行うかどうかを選択します。
  4. 4結果をコピーするか、minified.jsとしてダウンロードします。

JavaScriptを圧縮・軽量化

JavaScriptはウェブページの中で最も容量を占めることが多く、ページが操作可能になるまでにすべてのデータをダウンロード、解析、実行する必要があります。ミニファイ(圧縮)することで、ファイルサイズを半分以下に削減できます。このツールは、最新のビルドツールの多くで採用されているミニファイア「Terser」を使用し、ブラウザ上で直接、空白やコメントの削除、変数名の短縮、安全なコード圧縮を行います。

機能

  • 最新のES2015+をサポートするTerserエンジン。
  • 圧縮: デッドコードの削除、定数の畳み込み、構文の短縮化。
  • ローカル変数の名前の短縮(マングリング)(オプション)。
  • 必要に応じてライセンスコメントを保持。
  • バイト数とパーセンテージによるサイズ比較。
  • プライバシー保護: コードはブラウザ内でローカルに処理されます。

一般的な削減効果

コード 一般的な削減率
コメントが豊富なアプリケーションコード 50–70%
ライブラリのソースコード 40–60%
すでにコンパクトなコード 15–30%
すでに圧縮(ミニファイ)済みのコード 0–5%

圧縮されたファイルをgzipやBrotli圧縮で配信することで、転送サイズをさらに60〜75%削減できるのが一般的です。

ヒント

  • 元のソースコードを残しておく — 圧縮されたコードは読みにくく、デバッグが困難です。本番環境のコードをデバッグする場合は、ビルド時にソースマップを使用してください。
  • 本番環境向けにはビルド工程で圧縮する — このツールは、単発のスクリプト、スニペット、ブックマークレット、またはバンドラーを使用しないプロジェクトに最適です。
  • 圧縮後にテストする — 関数名や eval に依存するコードの場合は特に注意が必要です。

関連ツール

CSS圧縮ツールでスタイルシートを圧縮、JSONフォーマッターでデータを整形、またはBase64で埋め込み用にスクリプトをエンコードできます。

よくある質問

JavaScriptミニファイアは何をするツールですか?
コードの動作を変えずに、空白やコメントの削除、ローカル変数名や関数名の短縮(マングル化)、より短いコードへの書き換え(到達不能コードの削除や式の簡略化など)を行います。
どのJavaScript構文に対応していますか?
Terserは、アロー関数、クラス、モジュール、async/await、オプショナルチェーンなどのモダンJavaScript(ES2015以降)に対応しています。TypeScriptやJSXは、事前にJavaScriptへコンパイルする必要があります。
変数名を短縮しても安全ですか?
Terserはローカル変数と関数名のみを変更し、グローバル変数やオブジェクトのプロパティ名は変更しないため、コードの動作に影響はありません。ただし、実行時に関数名(fn.name など)に依存するコードの場合は、名前の短縮を無効にしてください。
構文エラーが出るのはなぜですか?
ミニファイアはまずコードを解析します。エラーの主な原因は、括弧や引用符の閉じ忘れ、あるいはTypeScriptの型アノテーションやJSXなど、JavaScript以外の構文が含まれていることです。エラーメッセージで詳細な原因を確認できます。
入力したコードはサーバーにアップロードされますか?
いいえ。Terserはお使いのブラウザ上で実行されるため、入力したコードがデバイス外に送信されることは一切ありません。