1 つ目の JSON 貼り付け、または .json ファイルをドロップ
2 つ目の JSON 確かめたいほうの版
毎月やっていますか? TableDI 2 で一度やってジョブに保存すれば、来月はもう一度実行するだけです。 TableDI 2 を無料でダウンロード
アップロードは行いません。 ファイルはこのタブの JavaScript が読んでいるだけで、あなたのパソコンから出ません —— サーバーは一切見ておらず、タブを閉じればデータは消えます。
2 つの JSON を比較する方法
- 2 つの JSON を入れる. 左右の枠に貼り付けるか、.json ファイルを枠にドロップします。解析はこのタブの中だけで行います。
- パスで違いを読む. 1 行が 1 つの違いです。場所(パス)、追加・削除・変更の別、左右の値が並びます。
- 書き方の違いは無視される. キーの並び替えやインデントの違いだけなら、行は 1 つも出ません。
- 一覧を持ち出す. CSV でダウンロードするかコピーして、チケットやレビューに貼ります。
テキスト差分で JSON を比べると、ほぼ全部が赤くなる
{"b":1,"a":2} と {"a":2,"b":1} は同じオブジェクトです。
ところが JSON を書き出し直すライブラリはキーの順番を自由に変えるので、行単位の差分ツールに掛けると、中身が同じでも画面が真っ赤になります。
インデントの幅や、末尾の改行の有無も同じです。
このページは先に両方を解析してから、解析した値同士を比べます。 キーの並び順と整形の違いは 1 行も出ません。残るのは、受け取る側の動きを実際に変える違いだけです。
配列は順番どおり、オブジェクトは順不同
JSON のオブジェクトのキーは「集合」で、順番に意味はありません。配列の要素は「並び」で、順番そのものが意味です。
だから [1,2,3] と [3,2,1] は 2 か所の変更として報告され、上の 2 つのオブジェクトは同一と判定されます。
配列の末尾に 1 件足しただけなら、items[2] の追加 1 行として出ます。
全角と半角、数値と文字列は「違い」として出ます
値は文字どおりに比べます。全角の "ABC" と半角の "ABC"、全角数字の "123" と "123" は、別の値として報告されます。
基幹システムと Web API で表記が揃っていないとき、どこがずれているかを見つけるにはこのほうが役に立ちます。
型も変換せずに比べます。文字列の "5" と数値の 5、false と 0、null とキーが無いことは、すべて違いです。
なお "5" と 5 は一覧の上ではどちらも 5 と表示されます。「変更」とあるのに左右が同じに見える行は、型が変わった行です。
16 桁以上の番号を数値で持っている JSON は要注意
ブラウザの JSON 解析は、数値を 15〜16 桁の精度でしか保てません。
"id": 12345678901234567891 のように引用符なしの数値で書かれた長い番号は、読み込んだ時点で末尾が丸められ、末尾だけ違う 2 つの番号が同一と判定されることがあります。
伝票番号や会員番号を "12345678901234567891" のように文字列で持っている JSON なら、この問題は起きません。
このページがしないこと
- マージ。 違いを報告するだけで、3 つ目の JSON は作りません。
- 配列の要素を ID で対応付けること。 配列は位置で比べます。同じレコードが別の順番で入っているなら、先に ID で並べ替えてください。 表の形のデータなら CSV を比較がキー列で行を対応付けます。
- 壊れた JSON の修復。 解析できないファイルは、パーサーが止まった位置と一緒に報告します。推測で直すことはしません。
- JSON Lines・JSON5。 標準の JSON だけです。コメントや末尾のカンマは解析エラーになります。
- Shift-JIS の .json。 ファイルは UTF-8 として読みます(JSON の規格は UTF-8 です)。
API のレスポンスを外に出さずに比べる
比較サイトに貼られる JSON は、たいてい API のレスポンスや設定ファイルです。キーやトークン、顧客のレコードが入っています。 2 つの JSON はこのタブの JavaScript が解析して比べるだけで、データを載せたリクエストは出ません。 同じ書き出しを毎回突き合わせる作業になってきたら、それはツールではなく仕組みの仕事です。TableDI 2 は、毎期やり直すファイル作業のためのデスクトップアプリです。ソース・ルール・納品のしかたをジョブとして保存するので、来月は新しいファイルを入れてもう一度実行するだけ。すべてあなた自身のパソコンの中で動きます。
よくある質問
見た目が違う 2 つの JSON が「同一」と出るのはなぜですか
違いがキーの順番かインデントだけだったからです。どちらも JSON の意味を変えません。 文字単位で比べたいなら、それはテキスト差分の仕事で、JSON を解析して比べるツールの出番ではありません。
全角と半角の違いは無視できますか
できません。値は文字どおりに比べるので、"ABC" と "ABC" は違いとして出ます。
表記ゆれを吸収して突き合わせたいなら、表にしてから あいまい一致を使ってください。
大きい JSON ファイルでも比べられますか
数 MB の JSON ならこのタブの中で解析して比べられます。画面には先頭 300 件の違いを表示し、CSV のダウンロードには全件が入ります。
レコードの配列が別の順番で入っています
配列は位置で比べるので、順番が違うと多数の変更として出ます。両方を同じキー(ID など)で並べ替えてから比べてください。 配列が持っている順序は位置だけだからです。
JSON はアップロードされますか
されません。解析も比較もこのタブの JavaScript が行います。ページはアクセス計測のスクリプトを読み込みますが、 開発者ツールのネットワークタブを開いたまま操作しても、JSON の中身を載せたリクエストは 1 件も出ません。
関連ページ
毎月やっていますか?
TableDI 2 で一度やってから、ジョブとして保存します。来月は新しいファイルを入れて、もう一度実行するだけです。
macOS(Apple シリコンと Intel)。Windows 版は開発中です(それまでの使い方)。無料版は試用版ではありません —— アカウントもカードも不要です。
最終確認 2026-09-11、TableDI チーム。このページに間違いがありますか? お知らせください —— 受信箱はひとつで、TableDI を作っている人間が読んでいます。