100% ローカル — データがブラウザの外に出ることはありません

JavaScriptフォーマッタ|圧縮されたスクリプトを読める形に

JavaScriptを字下げし直します。文字列、テンプレートリテラル、正規表現はそのまま通り、コメントも残ります。整えたあとも、コードはそのまま問題なく動きます。

高速 プライベート Cookieゼロ
インデント

JavaScript 入力

JavaScript 出力

このツールの動作

圧縮された JavaScript や空きの乱れた JavaScript が、読める JavaScript になります。

const a=[1,2,3].map(x=>x*2);if(a){b()}
const a = [1, 2, 3].map(x => x * 2);
if (a) {
  b()
}

演算子のまわりに空白、一行にひとつの文、ブロックごとに字下げひとつ。既定は空白二つで、四つにもできます。出てきたコードは、入れたコードとまったく同じように動きます。

圧縮が持ち去ったものは、整形では戻らない

function t(e){return e*2}
function t(e) {
  return e * 2
}

構造は戻りましたが、名前は戻りません。圧縮ツールはバイト数を削るために名前を付け替えます。元の multiplyByTwo はファイルのどこかに隠れているのではなく、消えています。元に戻せるのは整形のほうだけです。配信元がソースマップを公開していれば、名前を運んでいるのはそれで、ブラウザーの開発者ツールがそれを使います。

そのまま写すもの

  • 文字列とテンプレート。 "a b" は空白二つを保ちます。引用符の中では、空白は体裁ではなく値です。
  • 正規表現。 /a b/ はそのままです。模様の中の空白は、空白に一致します。
  • コメント。 行のものもブロックのものも場所を保ちます。ファイル冒頭のライセンス表示も同じです。

検証ツールでも linter でもない

壊れたコードは、指摘される代わりに字下げされて返ります。どこで壊れたかを探しているときにはたいていそれが望みですが、整った結果は判定ではありません。解析できるかどうかは実行するか編集ソフトで開いて確かめ、書き方や誤りには ESLint か、あなたの現場の同等のものを。

プライバシー

すべての処理はブラウザ内のJavaScriptだけで完結します。データがアップロードされることはないため、機密情報でも安心して利用でき、オフラインでも動作します。

よくある質問

圧縮されたコードを貼りましたが、名前が一文字のままです。
そのままです。圧縮は `userProfile` を `t` に付け替えますが、その付け替えは元に戻せません。元の名前はもうファイルの中にないからです。整形ツールは空白と改行を取り戻し、繰り返しや分岐や返り値といった構造を読めるようにしますが、捨てられた名前を返せる道具はありません。ソースマップがあれば、それが名前を運びます。
コードは変えられますか。
空白だけです。文字列、テンプレート、正規表現はそのまま写されます。`"a b"` の中や `/a b/` の中の空白は値の一部であって、体裁ではありません。名前の付け替えも、並べ替えも、セミコロンの追加もしません。これは組版であって、書き換えではありません。
linter ですか。
いいえ。使われていない変数のことも、`==` と `===` のことも、`const` にすべき `let` のことも言いません。ファイルが解析できるかどうかさえ確かめません。壊れた JavaScript は字下げされて返ります。壊れた場所を探すときには役立ちますが、判定ではありません。それは ESLint とあなたの編集ソフトの仕事です。

関連ツール