JSON整形・検証

JSONを読みやすく整え、壊れている場所を正確に示します。

アップロード不要・無料・登録不要

JSONを整形する方法

  1. 枠にJSONを貼り付けるか、.jsonファイルをドロップします。
  2. インデント(2・4・タブ)を選び、必要ならキーを名前順に並べるをオンにします。
  3. 整形するか1行に圧縮を押します。問題があれば行と列の位置を表示します。

しくみ

JSONの標準規格(RFC 8259)に沿った独自の厳密なパーサーで読み込み、問題を分かりやすい言葉で伝えます。末尾のカンマ、シングルクォート、コメント、抜けたコロン、閉じていない文字列などです。カーソルが正確な位置に移動するので、文字数を数える必要はありません。

クォートのないキーやundefinedのようなJavaScriptオブジェクト風の書き方も見分け、ただ失敗するのではなく何を直せばよいかを示します。

編集部で実測しました

キーが48,002個ある602KBのJSONファイルを整形したところ、検証と統計を含めて4コアのテスト用PCのChromeで105ミリ秒でした。一般的なAPIレスポンスや設定ファイルなら一瞬です。

こんなときに

1行にまとまったAPIレスポンスを読みたいとき。デプロイ前にpackage.jsonやtsconfigなどの設定ファイルをチェックしたいとき。テストデータを圧縮して小さくしたいとき。2つのJSONを行ごとに比べるためにキーを並べ替えたいときに。

2つのバージョンを比べるなら、ここで両方を整形してからテキスト比較に貼り付けてください。文字数やバイト数は文字数カウントで数えられます。

制限

  • コメントと末尾のカンマ(JSON5・JSONCの書き方)は、標準のJSONでは使えないためエラーとして表示します。
  • 約9000兆(2^53)を超える数値は、JavaScriptと同じく整形時に精度が落ちることがあります。
  • 数十MBの大きなファイルも扱えますが、スマホでは動作が重くなることがあります。

よくある質問

JSONはどこかに送信されますか?

いいえ。読み込みも整形もブラウザ内で行うので、JSONに含まれるトークンやキー、個人情報は端末の外に出ません。

キーを名前順に並べるとは?

すべてのオブジェクトのキーをアルファベット順に並べます。データは変わらず順番だけが変わるので、ファイルの比較が楽になります。

2スペース、4スペース、タブのどれがいい?

Web系のプロジェクトでは2スペース、PythonやJavaでは4スペースが多く使われます。プロジェクトで使っている形式に合わせましょう。

JavaScriptでは通るのに、なぜJSONエラーに?

JavaScriptのオブジェクトではシングルクォート、クォートなしのキー、コメント、末尾のカンマが使えますが、JSONでは使えません。エラーメッセージでどれに当たるかが分かります。

関連ガイド