Lewati ke konten
FileTinker

JSON Diff

Tempel dua dokumen JSON dan lihat apa yang ditambahkan atau dihapus, baris demi baris. Kunci objek diurutkan terlebih dahulu, sehingga objek yang diubah urutannya tidak dihitung sebagai perubahan. Semuanya berjalan di browser Anda, jadi data Anda tidak pernah diunggah.

Cara membandingkan JSON

  1. Tempel JSON asli ke dalam kotak kiri.
  2. Tempel JSON yang diubah ke dalam kotak kanan.
  3. Baca penambahan dan penghapusan yang disorot di bawah.

Tentang membandingkan JSON

Membandingkan JSON dengan mata rentan terhadap kesalahan, terutama ketika kunci diubah urutannya atau dokumennya besar. Diff semantik menormalkan kedua sisi — mengurutkan kunci objek sambil mempertahankan urutan array — lalu menyorot hanya baris yang benar-benar berbeda, sehingga Anda melihat perubahan nyata alih-alih gangguan pemformatan.

Ini berguna untuk meninjau respons API, perubahan konfigurasi, dan keluaran uji snapshot. Semuanya dihitung di browser Anda, sehingga data yang Anda bandingkan — yang sering berisi catatan nyata — tidak pernah meninggalkan perangkat Anda.

Gunakan diff kapan pun dua lingkungan tidak setuju dan konfigurasinya seharusnya identik — file pengaturan staging versus produksi adalah contoh klasik. Ini juga sama berguna untuk memverifikasi pengeditan Anda sendiri: setelah memodifikasi dokumen besar secara manual, diff mengonfirmasi bahwa Anda mengubah tepat bidang yang Anda maksud dan tidak ada yang lain. Dan ketika peningkatan API merusak klien, membandingkan respons dari setiap versi menunjukkan bidang yang diganti namanya atau hilang dalam hitungan detik.

Perilaku sort-keys-but-not-arrays mencerminkan spesifikasi JSON itu sendiri. Objek didefinisikan sebagai kumpulan yang tidak berurutan — dua objek dengan anggota yang sama adalah nilai yang sama terlepas dari urutan serializer menuliskannya. Array, sebaliknya, diurutkan berdasarkan definisi: menukar dua item menghasilkan dokumen yang benar-benar berbeda. Menormalkan satu dan tidak yang lain adalah apa yang memisahkan perbandingan semantik dari diff teks naif.

Pertanyaan umum

Bagaimana cara membandingkan dua file JSON?

Tempel versi asli di sebelah kiri dan versi yang diubah di sebelah kanan. Baris yang ditambahkan disorot hijau, baris yang dihapus merah, lengkap dengan jumlah masing-masing.

Apakah urutan kunci berpengaruh?

Tidak. Kedua sisi diserialisasi ulang dengan kunci yang diurutkan sebelum dibandingkan, sehingga mengubah urutan kunci yang sama tidak menunjukkan perbedaan — hanya perubahan nilai atau struktur yang sebenarnya yang muncul.

Bagaimana jika JSON saya tidak valid?

Alat ini memberi tahu Anda sisi mana yang gagal diuraikan dan alasannya, sehingga Anda dapat memperbaikinya sebelum membandingkan.

Apakah data saya diunggah?

Tidak. Perbandingan berjalan sepenuhnya di browser Anda; tidak ada yang dikirim ke server.

Mengapa nilai yang terlihat identik ditampilkan sebagai berubah?

Biasanya perbedaan tipe. String "1" dan angka 1 dicetak hampir identik tetapi merupakan nilai JSON yang berbeda, dan hal yang sama berlaku untuk true versus "true" atau null versus "null". Ini paling sering terjadi dengan data yang diekspor dari spreadsheet atau input formulir, di mana semuanya tiba sebagai string. Diff mengatakan yang sebenarnya — periksa tanda kutip di sekitar nilai yang berubah.