JSONツール

JSON整形入れ子を読み、値を確かめる

初期設定では、入力や設定の変更から400ms後に結果を更新します。自動処理をオフにすると実行ボタンが表示され、Ctrl/Cmd+Enterでも実行できます。古い結果はコピー・保存できません。

JSON整形

この四つは入力をテキストとして処理します。続けるには結果を入力に使います。直前の適用は元に戻せます。

JSON・テキスト入力

入力はこのブラウザタブ内で処理され、送信も永続保存もされません。

結果

変更を反映しています…

ログから取り出した一行のレスポンスでは、目的のキーがどの階層にあるのか見失いがちです。JSONフォーマットで構造を開けば、長い識別子や小数末尾のゼロも確かめながら読めます。JSON整形が変えるのは表示だけで、値には触れません。

JSON圧縮は貼り付け用の短い表現に、ツリーは枝ごとの編集に使えます。JSON構文チェックはJSON整形と圧縮の実行時に行います。並べ替えや空欄の削除は別の操作なので、整形しただけで項目が消えることはありません。

変化を確認して次の操作へ

配列の位置をずらさない

APIによっては、キーがない状態とnullがある状態を区別します。削除案をプレビューしてから適用でき、元の結果も見比べられます。削除対象はオブジェクトのプロパティだけです。配列内の空文字やnullは残り、後続要素のインデックスは変わりません。子を失って空になったオブジェクトは、親から削除される場合があります。

二つのデータツリーで配列の位置は同じまま、空のプロパティの枝だけがプレビューで示され、右側から除かれている。

ログの文字列を一段ずつ戻す

ログでは文書全体が文字列に包まれていることがあります。エスケープは外側の引用符を付けずに一段追加し、解除は一段だけ戻します。引用符付きの文字列にも対応します。両欄を比べてから結果を入力に使えば、Unicodeの表記も続けて変換でき、字下げや長い数値はそのままです。

同じ内容の二つの文書で、右側の引用符の前だけに琥珀色のバックスラッシュがあり、逆向きの矢印が相互変換を示す。

保存前に押さえたい三つの操作

01

自動と手動を切り替える

初期設定では、入力や設定の変更から400ms後に結果を更新します。自動処理をオフにすると実行ボタンが表示され、Ctrl/Cmd+Enterでも実行できます。古い結果はコピー・保存できません。

02

ツリーでは値全体を置き換える

枝の編集を選ぶと、その値をJSONとして入力できます。文字列にはダブルクォートが必要です。保存すると入力と結果が更新され、直前の状態を一回戻せます。

03

プレビューを確定する

削除や並べ替えの案を確認し、適用かキャンセルを選びます。適用前のコピーは現在の結果が対象です。元に戻すと、最後に適用した編集または整理の前に戻ります。

値の確認に役立つ機能

長い数値も元の表記で

整数を浮動小数点数へ変換せず、数字の文字列を保持します。900719925474099312345、1.00、-0、指数表記をそのまま出力でき、IDや精度の検証に使えます。

必要な枝だけ展開

オブジェクトと配列は折りたたまれた状態から開きます。一度に50項目を表示し、続きを追加できます。キーにスラッシュやチルダがあっても、その枝を選んで置き換えられます。

容量と深さを別々に見る

現在の出力についてUnicode文字数、UTF-8バイト数、最大深度、キー総数を表示します。日本語は複数バイトになるため文字数とは一致しません。ルートの深度は0です。

文字列とUnicodeの相互変換

引用符、バックスラッシュ、制御文字をエスケープし、一段だけ解除できます。非ASCII文字をUnicodeエスケープに変換し、絵文字のサロゲートペアも扱います。文書でないテキスト結果もコピーや保存が可能です。

整形・削除のルール

整形では重複キーを拒否
同一オブジェクト内の同名キーはエラーにします。Unicodeエスケープで同じ名前になる場合も対象です。コメント、末尾カンマ、引用符なしのキーも受け付けず、元の入力を残します。
削除はプロパティ単位
null削除と空の値の削除は別設定です。空の値は空文字・空配列・空オブジェクトを指し、子から親へ判定します。空白だけの文字列、false、0、配列要素、ルート値は残します。
辞書順ではない並べ替え
キーはUTF-16コード単位の順で比較し、大文字と小文字を区別します。配列の中のオブジェクトにも再帰的に適用しますが、配列自体の順序は変えません。
文字列の意味を保持
エスケープの表記は変わる場合があります。例えば\u0061はaになります。字下げは2スペース、4スペース、タブから選べます。圧縮でも文字列内の空白は削りません。署名用の正規化ではありません。
処理量には上限がある
入力はUTF-16で500,000コード単位、50,000ノード、深度100まで。数値トークンは1,000文字、出力は2,000,000コード単位までです。超過時は部分的な結果を出力しません。
テキスト操作の範囲
四つの文字変換は文書構造を検証しません。解除にはJSON文字列の中身か引用符付きの文字列が必要で、不正なエスケープはエラーです。Unicode復号はリテラルのバックスラッシュや、制御文字・引用符・バックスラッシュ・孤立サロゲートのエスケープを保持します。不正な表記もそのままです。符号化は非ASCIIのUTF-16単位が対象です。

JSON整形のよくある質問

整形と圧縮はいつ使い分けますか?

読み合わせやデバッグには改行つき、埋め込み用の短いテキストには一行の圧縮結果が便利です。どちらも文字列内の空白を保持します。

構文エラーでは何を確認すればよいですか?

表示された行・列と、その直前の引用符、カンマ、括弧を確認してください。コメントや末尾カンマを自動修復する機能はありません。

大きなデータを扱えますか?

入力は500,000コード単位までです。深度とノード数にも上限があり、超過すると処理を止めます。大きな文書は必要な枝に分けてください。

キーを並べ替えるには?

現在の結果を作成してから並べ替えを選び、プレビューを適用します。配列の順番は保ったまま、各オブジェクトのキーを並べます。

字下げの種類は選べますか?

2スペースが初期値です。4スペースまたはタブに変えた場合は再実行してください。圧縮ボタンは字下げの設定に関係なく一行にします。

結果に気になる点はありますか?

次のレスポンスをJSON整形で読みやすく

サンプルでJSON整形、圧縮、削除案の違いを確認できます。