JavaScriptフォーマッター
このJavaScriptフォーマッターで、読みにくい、または圧縮されたJavaScriptを整形できます。コードを貼り付けると、ツールがESモジュールとして解析し、2つのスペースでインデントして、各文を1行ずつ出力します。演算子の前後の空白を統一し、文末にセミコロンを付けながら、コメントは保持します。推測で補わず構文エラーを報告するため、開発者はレビュー、デバッグ、ドキュメント作成に使える読みやすく有効なコードを得られます。
よくある質問
JavaScriptフォーマッターはどのように動作しますか?
コードをESモジュールとして構文木に解析し、統一されたスタイルで再出力します。テキストルールを当てて修正するのではなく解析を行うため、出力の構造は常に入力と一致します。
出力にはどのようなスタイルが使われますか?
ブロックは2つのスペースでインデントされ、各文は個別の行に出力されます。演算子の前後には空白が入り、文末にはセミコロンが付きます。短いオブジェクトリテラルと配列リテラルは1行のままになり、文字列の引用符とテンプレートリテラルは入力どおりに保持されます。
インデントやその他の設定を変更できますか?
いいえ。このフォーマッターにオプションはありません。すべての入力が同じスタイルで出力されるため、共有する際も結果を予測しやすくなります。
コードに構文エラーがあるとどうなりますか?
ツールは処理を停止し、問題のトークンに続けて「Unexpected:」などのパーサーメッセージを表示します。報告された問題を修正して、もう一度フォーマッターを実行してください。
コメントは保持されますか?
はい。行コメントとブロックコメントは保持され、関連する文とともに配置されます。文の途中にあるコメントは、次の文の先頭に移動する場合があります。
最新のJavaScriptに対応していますか?
はい。パーサーは、importやexport、アロー関数、クラス、asyncとawait、分割代入、スプレッド構文、オプショナルチェーン、Null合体演算子、テンプレートリテラルなどの最新の構文を理解します。1行に収まらない長いオブジェクトリテラルは、プロパティごとに1行に分けて整形されます。
ミニファイされたコードをフォーマットできますか?
はい。圧縮されたファイルを解析し、読みやすい行とインデントに整えます。圧縮ツールが選んだ短い変数名はそのまま保持されます。整形によって名前が変更されることはありません。
整形するとコードの動作が変わりますか?
いいえ。変更されるのは空白、改行、文末の記号だけです。追加されるのはセミコロンのみで、JavaScriptがコードを読み取る方法に合ったものです。
結果がjavascriptのコードフェンスで囲まれているのはなぜですか?
結果はjavascriptフェンスで始まるMarkdownのコードブロックとして返されるため、Markdownに貼り付けるとハイライト表示されます。通常のソースコードが必要な場合は、フェンスの間にある行をコピーしてください。
JSX、TypeScript、またはFlowはどうすればよいですか?
このページで扱うのは通常のJavaScriptです。ReactコンポーネントにはJSX Formatterを、型付きコードにはTypeScriptまたはFlow Formatterを使ってください。型注釈は標準のJavaScriptには含まれません。