無料Webツール

JSON差分チェッカー

2つのJSONを比較し、追加・削除・変更されたパスを一覧化します。

入力と設定

使い方と確認ポイント

JSON AとJSON Bを比較し、追加・削除・変更されたパスを一覧化します。APIレスポンス、設定ファイル、保存データなど「構造のどこが変わったか」を確認する用途です。

  1. JSON AとJSON Bを入力します。
  2. 比較を実行します。
  3. 追加・削除・変更件数と各pathのbefore/afterを確認し、必要なら結果JSONを保存します。
比較
JSON値を階層ごとに比較
パス
$.key / [index] 形式
配列
位置(index)ベースで比較
出力
差分一覧をJSONでダウンロード可能

name変更+active追加なら「変更1・追加1」

{"name":"A","count":1} と {"name":"B","count":1,"active":true} を比べると、$.name がchanged、$.active がaddedになります。

配列は「同じ内容を別位置へ移動した」と認識するのではなく、indexごとに比較します。配列先頭へ1件追加すると、その後の多くの要素が変更として見えることがあります。

オブジェクトはキー単位で追える

片方だけにあるキーはadded/removed、両方にあって値が違う箇所はchangedとして、その階層pathを表示します。

型が変わるとその場所をchangedとして扱う

文字列→数値、object→arrayのように値の種類自体が変わった場合は、内部を細かく比較せずそのpathの変更として出します。

配列は並び順に敏感

LCSやIDベースの移動検出ではありません。要素の挿入・並び替えが多いデータでは差分件数が大きくなりやすいです。

JSONとして読めない入力は比較できない

コメント付きJSON、末尾カンマ、JavaScriptオブジェクト表記はそのままでは解析できません。標準JSONへ直してから比較してください。

差分JSONは機械処理の入口にも使える

結果をダウンロードして、レビュー記録や後続スクリプトへ渡せます。ただしパッチ適用形式そのものではありません。