Utilo

JSON 差分比較

2 つの JSON を構造的に比較。キーや配列の順序を無視したり、配列要素を id で照合したりでき、追加・削除・変更・型変更されたフィールドを JSON パス付きの折りたたみツリーで表示します。

このJSON diff ツールで何ができるのか

テキストディフツールは JSON を行として処理します。順序が変更されたキーやフォーマットされたファイルは赤と緑の壁として表示されます。このツールでは,2つのJSONドキュメントの 構造を比較します。両方のツリーを歩き、追加、削除、変更されたすべての値を正確なJSONパスで報告し、型が変更された値 (文字列になった数字はクラシックなAPI回帰) をフラグし、結果を折りたたむツリーまたはフラットリストとして表示します。Webワーカーで比較が実行されるので大きなペイロードは応答性があります

使い方

  1. オリジナルの文書を Aに貼り、新しい文書を Bに貼る。
  2. 追加、削除、変更、タイプ変更の要約カウンターを読む
  3. $.items[2].price のようなコピーフレンドリーなリストのために、分岐する分岐部のみを拡張するために tree ビューを使用するか、または paths に切り替えます。
  4. 配列が順序列ではなくセット (タグ、許可) のとき、無視順序 をオンにする。
  5. match by key (例えば id) を設定して、配列要素を同一性によってペアします。

典型的な用途

  • API回帰チェック: 展開後のステージと生産からの応答を比較する。
  • Config drift: 2つの環境設定またはTerraform JSONプランを異なる。
  • 契約テスト: スポットフィールドはバックエンドを静かに削除または改名します。
  • フィクチャー: スナップショットテストで何が変わったか確認し、それを受け入れる。

ヒントと注意点

  • JSON オブジェクトは定義上順序が違います。
  • 1 と 1.0 は JSON で等しい数で、"1" と 1 はタイプ変更です。
  • 無視順序ではプリミティブの配列がマルチセットとして比較されるので複製はまだカウントされます
  • キーによるマッチは、そのキーを含むオブジェクトの配列にのみ適用されます.他の配列はインデックス比較に回ります。
  • 無効なJSONは、失敗した側について解析機のエラーメッセージで報告されます。

よくある質問

私のデータはサーバーに送られますか?

違う違う。ブラウザで解析して比較します

テキスト・ディフツールとはどう違いますか?

テキストの違いは線を比較するものです。このツールでは JSON が理解されています。フォーマット、空白、キー順序は騒音を起こしません。それぞれの違いにはパスがあります。

大型ファイルは比較できますか?

数メガバイトのファイルはうまく機能しますなぜならディフがメインスレッドから離れているからです。木はノードを広げると怠け者っぽく表現します

"型が変わった"とはどういう意味ですか?

この値は両側に存在しますが、JSON タイプが異なります.例えば、配列で置き換えたオブジェクト、文字列で置き換えたnullなどです。

はい。すべての処理は JavaScript、Web Worker、Web API を使ってブラウザ内で直接行われます。入力・貼り付け・アップロードした内容がサーバーに送信されることはありません。

このページは英語から自動翻訳されています。誤りを見つけた場合はお知らせください。