※当サイトはプロモーションが含まれています

JSON整形

API開発・デバッグでJSONを見やすく整形するツール

JSONを貼ると整形(インデント2/4スペース)と圧縮(Minify)をワンクリックで切り替え。構文エラーは行・列番号で位置を特定します。APIレスポンスのデバッグ、設定ファイルの可読化、ログJSONの解析に。

APIレスポンスのデバッグや、設定ファイルの整形・検証に使えます。

読み込み中...

JSON整形の豆知識・コツ

  • JSONではキーと文字列にダブルクォートが必須(シングルクォート不可)
  • 末尾カンマ(trailing comma)はJSON仕様ではエラー
  • JSONの最大ネスト深度はパーサーに依存するが一般に数百階層まで対応

JSON整形の使い方

  1. JSONを入力

    テキストエリアにJSONを貼り付けます。

  2. 自動整形

    貼り付けと同時に整形結果が表示されます。エラーがあれば赤字で表示されます。

  3. コピー・圧縮

    整形結果をコピーしたり、Minifyで圧縮することもできます。

JSONとは?書き方の基本ルール

JSON(JavaScript Object Notation)は、データをテキストで表すための書式です。WebのAPIがサーバーからデータを返すときや、アプリの設定ファイルなどで広く使われています。人が読めて機械も解釈しやすいのが特徴です。

JSONの部品は、キーと値を波かっこ{ }で囲んだオブジェクトと、値を角かっこ[ ]で並べた配列が基本です。値として使えるのは、文字列、数値、true・false、null、そしてオブジェクトと配列の6種類で、これらを入れ子にして複雑な構造を表します。

オブジェクトの各要素は「キー: 値」の形でカンマ区切りにします。日付や時刻を表す専用の型はないため、文字列として書くのが一般的です。値の種類ごとの書き方は次のとおりです。

  • 文字列: "東京"(ダブルクォートで囲む)
  • 数値: 100、-3.5、1.2e3(クォートなし、先頭の0や16進数は不可)
  • 真偽値・null: true、false、null(すべて小文字)

JSONの構文エラーの原因と直し方

JSONの解析に失敗するときは、まずエラーメッセージを確認します。ブラウザが出すメッセージには、問題のある文字や位置(行・列、または先頭からの文字数)が含まれることが多く、そのあたりを見直すのが近道です。

よくある原因は、コメント(// や /* */)が入っている、キーがクォートで囲まれていない、undefinedやNaNなど使えない値がある、文字列の中に改行やタブがそのまま入っている、といったものです。JSONにはコメントを書く仕組みがないため、設定ファイルの説明はキー名で工夫するか別のファイルに書きます。

ログやプログラムの出力からコピーしたときは、前後に余分な文字が付いていることもあります。先頭が { か [ で始まり、末尾が } か ] で終わっているか、かっこの数が対応しているかを確認してください。整形して読みやすくすると、閉じ忘れの場所が見つけやすくなります。

JSONのインデントは2スペースと4スペースどちら?

インデントは、入れ子の深さを字下げで表す空白のことです。JSONの意味には影響せず、どちらを選んでも解析結果は同じになります。読みやすさと、チームやプロジェクトの慣習で決めるのが一般的です。

Web開発やJavaScript周辺では2スペースが多数派で、多くの自動整形ツールの初期値も2スペースです。階層が深いJSONでも横幅を取りすぎないという利点があります。4スペースは字下げがはっきりして構造を追いやすく、Python系のプロジェクトや設定ファイルで好まれます。

タブ文字を使う流儀もありますが、表示環境によって幅が変わるため、共有するJSONではスペースの方が無難です。このツールでは2スペースと4スペースを切り替えられ、整形結果はボタンひとつでコピーできます。

JSONとCSV・XML・YAMLの違い

CSVは表形式のデータをカンマ区切りで並べた形式で、表計算ソフトで開きやすい反面、入れ子構造や配列を表現できません。一覧データのやり取りにはCSV、階層のあるデータにはJSONという使い分けが一般的です。

XMLはタグで要素を囲む形式で、JSONより古くから使われています。属性やスキーマによる厳密な検証ができる一方、同じ内容でも記述量が多くなりがちです。現在のWeb APIでは、軽量なJSONが主流になっています。

YAMLは設定ファイルでよく使われる形式で、インデントで階層を表し、クォートやかっこが少なくて済みます。JSONはYAMLの一部として扱える関係にあり、YAMLのパーサーは多くの場合JSONもそのまま読み込めます。

JSON整形のよくある質問

JSONデータはサーバーに送信されますか?

いいえ、すべてブラウザ上で処理されます。入力したJSONは外部に一切送信されません。

大きなJSONファイルも処理できますか?

ブラウザのメモリの範囲内で処理可能です。数MB程度のJSONであれば問題なく整形できます。

Minify(圧縮)とは何ですか?

インデントや改行を削除して、JSONを最小サイズにする処理です。APIのリクエストボディなどで使います。