本文へスキップ
ここで実行 100% ブラウザ内で動作します。アップロードもログインも不要です。

JSON Diff

2 つの JSON をキーパス単位で比較し、差分をリストで列挙します。

JSON A(左)

JSON B(右)

使い方

  1. 1 つ目の JSON をパネル A に貼り付けます。旧データ(左側)として扱われます。
  2. 2 つ目をパネル B に貼り付けます。新データ(右側)です。
  3. Compare を押します。編集に合わせて差分は自動更新されます。
  4. 記号の意味:~ は値の変更、- は A のみに存在、+ は B のみに存在。
  5. Copy でレポート全体を取り出せます。

よくある用途

よくある質問

Q: パスの形式は? A: オブジェクトキーはドットで連結(user.name)、配列要素は角括弧の添字(user.tags[2])です。空オブジェクトと空配列はそれ自体が葉として扱われ、有無も報告されます。

Q: 型が違う場合は? A: 数値の 30 と文字列の "30" は別物と判定します。JSON.stringify が両者を区別するためです。オブジェクトとスカラーが同じパスで出会っても、値の変更として報告されるだけでクラッシュしません。

Q: 配列は要素ごとに比較しますか? A: はい、添字単位です。先頭に 1 つ挿入すると全添字がずれるため多くの変更が報告されます。JSON 配列に対して位置比較は唯一あいまいでない方法だからです。

データはこのデバイス内にとどまります

JSON Diff は 100% ローカルで動作します。貼り付けたり、ドロップしたデータはすべてお使いのブラウザ内で処理され、送信されることはありません。当社のサーバーには何も保存されません——タブを閉じればすべて消えます。

入力された内容がサーバーへ送信・記録・解析利用されることはありません。初回読み込み後はネットワークを切断していてもこのページは動作します。