JSON差分チェッカー
2つのJSONドキュメントを比較し、キーの順序や書式の違いを無視して、追加・削除・変更された内容だけを正確に表示します。
🔒 お使いのブラウザ内でローカル処理されます
Loading…
使い方
- 左側(モバイルでは上側)の「JSON A」ボックスに元のJSONを貼り付けます。
- 右側(モバイルでは下側)の「JSON B」ボックスに比較したいJSONを貼り付けます。
- 両方のボックスが有効なJSONであれば、下の比較結果がリアルタイムで更新されます——ボタンを押す必要はありません。
- 各差分には、パス、追加/削除/変更のラベル、変更前および(または)変更後の値が表示されます。
特徴
- テキスト差分ではなく構造(意味)的な差分——キーの順序や書式の違いは誤検出されません
- user.address[0].city のような分かりやすいドット/角括弧パス表記で追加・削除・変更を報告
- 入力や貼り付けと同時にリアルタイムで更新——ボタン操作は不要
- 無効なJSONに対してはクラッシュせず、分かりやすい解析エラーメッセージを表示
- 100%クライアントサイド処理——JSONはブラウザの外に出ません
よくある質問
通常のテキスト差分とは何が違いますか?
テキスト差分はJSONを1行ずつ比較するため、データが完全に同じでもキーの順序やインデントが変わるとすべての行が異なると表示されてしまいます。このツールは両方のドキュメントを解析してから実際のデータ構造を比較するため、本当の値の差分だけを報告し、キーの順序や書式は完全に無視します。
「追加」「削除」「変更」はそれぞれ何を意味しますか?
「追加」はそのパスがJSON Bにのみ存在することを意味します。「削除」はそのパスがJSON Aにのみ存在することを意味します。「変更」はそのパスが両方に存在するものの値が異なる(AとBで型が違う場合、例えば数値と文字列なども含む)ことを意味します。
配列の要素はどのように比較されますか?
配列はインデックス順に1つずつ比較されます。同じインデックスの要素が異なる場合、そのインデックスのパス(例:tags[2])で変更として報告されます。片方の配列が長い場合、余分な末尾の要素は追加または削除として報告されます。
入力したJSONはどこかにアップロードされますか?
いいえ。両方のドキュメントはすべてブラウザ内で解析・比較され、サーバーに送信されたり保存されたりすることはありません。
JSONが無効な場合はどうなりますか?
問題のあるボックスの下に分かりやすい解析エラーメッセージが表示され、クラッシュすることはありません。構文を修正してもう一度お試しください。