Comparer deux documents JSON

Comparez deux documents JSON et repérez les valeurs ajoutées, supprimées ou modifiées.

Vos fichiers sont traités ici, sur votre appareil

Nous n'envoyons pas votre fichier ou le contenu du texte à un serveur de traitement. Aucun compte n'est nécessaire et il n'y a pas de quota d'opération quotidien. Les outils individuels ont des limites de taille pour protéger la mémoire de votre appareil.

Une connexion est nécessaire pour charger le site et ses ressources. L'hébergement peut recevoir des données de visite technique. Les favoris stockent uniquement les identifiants d'outils dans ce navigateur.

Comment nous traitons vos données →

Comment utiliser cet outil

  1. Collez les documents originaux et nouveaux dans leurs champs respectifs.
  2. Appliquer pour comparer les types, les valeurs, les clés et les index.
  3. Inspectez les chemins d'accès aux rapports et téléchargez les différences si vous devez les conserver.

Un exemple que vous pouvez vérifier

Identifiez un changement de valeur sans le confondre avec l'ordre de propriété.

Exemple d'entrée

Original: {"name":"Ana","active":true}
New: {"active":true,"name":"Luis"}

ParamètresComparaison structurelle.

Résultat attendu

[{"path":"/name","change":"changed","before":"Ana","after":"Luis"}]

Il y a une différence. Déplacer actif n'en ajoute pas un autre. Le rapport utilise JSON Pointer n'est pas un patch exécutable.

Comparer deux documents JSON: usages et conseils pratiques

La comparaison structurelle JSON sépare les changements de données des changements de présentation. Les documents avec des indentations différentes ou des membres d'objets ordonnés différemment peuvent représenter exactement les mêmes valeurs. L'outil analyse les deux documents et compare leur contenu. Lorsque rien ne diffère, le rapport est un tableau vide et le compteur affiche zéro. Cela ne signifie pas que les fichiers originaux sont identiques octet pour octet : les espaces, les terminaisons de ligne ou la notation numérique peuvent différer tout en produisant la même valeur interprétée. Utilisez une comparaison en texte brut lorsque ces détails de représentation font l'objet de la révision.

Les tableaux sont comparés par position. Le remplacement de deux éléments peut produire plusieurs changements même lorsque les deux éléments sont toujours présents. Les objets ne sont pas automatiquement mis en correspondance avec des champs tels que id, et l'outil ne calcule pas une séquence minimale d'éditions de liste. Pour comparer des ensembles non ordonnés, préparez d'abord une représentation triée par une clé explicite appropriée à vos données. Types importent aussi: 1 diffère de "1", false n'est pas équivalent à 0, et un membre manquant diffère d'un membre présent avec null. Le remplacement d'un objet entier par une chaîne est signalé comme un changement de valeur à ce chemin plutôt que comme des changements à chaque ancien enfant.

Chaque différence contient chemin et changement. Les membres ajoutés incluent after, les membres supprimés incluent before et les valeurs modifiées incluent les deux. Les chemins utilisent le texte JSON Pointer syntaxe : les barres obliques et les tildes dans les noms de membres sont échappés ~1 et ~0. Un chemin vide indique la racine lorsque le document entier change de type ou de valeur. Le rapport est descriptif et n'utilise pas le format JSON Patch ; ne l'exécutez pas comme une séquence d'instructions pour mettre à jour un autre document. Conservez les deux originaux afin de pouvoir répéter la comparaison et inspecter le contexte entourant chaque différence rapportée avant de faire une modification ailleurs.

L'analyse rejette les clés en double et les entiers dont la magnitude ne peut pas être représentée en toute sécurité. JSON utilise la précision numérique du navigateur; les systèmes d'origine doivent utiliser des chaînes pour les identifiants longs, tandis que les calculs décimaux exacts nécessitent un système approprié spécifique au domaine. Chaque document prend en charge jusqu'à un million de caractères et cent niveaux d'imbrication. Si plus d'un millier de différences se produisent, l'opération demande des sections plus petites plutôt que de présenter un rapport incomplet qui semble complet. Avant d'examiner une longue réponse, essayez un nom modifié, un membre supprimé et un tableau réorganisé pour comprendre comment ces cas apparaissent dans la sortie et quels détails restent pertinents pour votre comparaison.

Options et limites

Collez deux documents JSON valides. L'ordre de propriété de l'objet est ignoré ; l'ordre du tableau est important. Les différences sont identifiées à l'aide JSON Pointer chemins. Les clés en double et les entiers dangereux sont rejetés. Maximum 1 millions de caractères par document, 100 Niveaux de nidification et 1,000 différences.

Questions fréquentes

Un nombre est-il égal à une chaîne ?

Non. Le nombre 1 diffère de la chaîne "1". Les changements d'indentation ne comptent pas comme des différences.

Guides