JSONの整形と最小化(minify)の違いと使い分け
更新日 2026-08-17
JSON を扱っていると、「整形(pretty print)」と「最小化(minify)」という 2 つの操作をよく目にします。どちらもデータの中身は変えず、見た目(空白と改行)だけを変えるものですが、目的が正反対です。この記事で、違いと使い分けを整理します。
整形(pretty print)とは
整形は、改行とインデントを加えて JSON を人が読みやすい形にする操作です。ネストしたオブジェクトや配列が階層ごとに字下げされ、構造が一目で分かります。API のレスポンスを確認したり、設定ファイルを編集したり、バグを探したりするときに役立ちます。
最小化(minify)とは
最小化は、逆に不要な空白や改行をすべて取り除き、1 行にまとめる操作です。見た目は読みにくくなりますが、ファイルサイズが小さくなるため、通信量の削減や読み込み速度の向上に効きます。本番環境で配信する JSON や、URL・設定値に埋め込む JSON でよく使われます。
データは変わらない
大事なポイントは、整形も最小化も「データ(値)」は一切変えないということです。キーの順序も保持され、変わるのは空白と改行だけです。したがって、整形した JSON と最小化した JSON は、プログラムから見れば完全に同じデータとして扱われます。
使い分けの目安
- 読む・編集する・デバッグする → 整形
- 配信する・保存する・埋め込む(サイズ優先) → 最小化
- 他人に共有する → 相手が読むなら整形、機械が処理するなら最小化
よくあるエラーの原因
整形や検証でエラーが出るときは、末尾のカンマ(trailing comma)、シングルクォート、コメント(// や /*)、キーの引用符抜けなどが原因のことが多いです。標準の JSON(RFC 8259)はこれらを許可していません。当サイトの JSON整形ツールは、エラー箇所の手がかりを示すので、壊れた JSON の修正にも役立ちます。CSV や YAML との相互変換が必要なら、CSV⇔JSON・YAML⇔JSON ツールも合わせてご利用ください。
コメント付き JSON との違い
設定ファイルなどで見かける「コメントを書ける JSON」は、JSON5 や JSONC といった拡張仕様で、標準の JSON とは別物です。標準の JSON にはコメントを書けないため、コメント付きのファイルをそのまま標準のパーサに通すとエラーになります。配布・API のやり取りでは標準 JSON、人が編集する設定ファイルでは拡張仕様、と使い分けられていることを知っておくと混乱を避けられます。
整形しても「意味」は変わらないが、表記は正規化される
整形・最小化はデータの意味を変えませんが、ツールによっては数値の表記(例: 1.0 → 1、指数表記の統一)や、エスケープの仕方が正規化されることがあります。オブジェクトのキーの順序は JSON では意味を持たないため、並び順が保持されるかはツール次第です。厳密なバイト一致が必要な用途(署名の対象など)では、正規化の有無に注意してください。