Comparer deux fichiers JSON
Comparez la structure de deux documents JSON et concentrez-vous sur les changements utiles.
Le texte et les fichiers sont traités dans votre navigateur ; l’outil n’envoie ni le contenu original ni les résultats à un serveur. Consultez la politique de confidentialité pour les statistiques et la publicité.
Mode d’emploi
- Collez un JSON valide à gauche et à droite ou déposez un fichier local dans chaque zone ; le document gauche est le point de départ.
- Ouvrez les options pour ignorer des chemins variables ou associer les tableaux d’objets par une clé comme
id. - Examinez les chemins ajoutés, supprimés et modifiés, puis exportez la liste en CSV, JSON Patch ou JSON trié.
Exemples
Ignorer l’horodatage et garder le changement de prix
En ignorant $.meta.updatedAt, le changement de date disparaît mais $.price de 10 à 12 reste affiché.
Détails
L’outil compare les valeurs et la structure JSON après analyse, et non les lignes de texte. Les espaces hors des chaînes ne comptent pas et, par défaut, l’ordre des propriétés d’un objet non plus. Les tableaux sont comparés par indice, sauf si vous indiquez une clé unique comme id : un simple changement d’ordre ne produit alors pas une multitude de fausses modifications. Vous pouvez aussi considérer 1, 1.0 et 1e0 comme le même nombre.
Les règles d’exclusion emploient des chemins explicites commençant par $. Le nœud correspondant et ses descendants disparaissent de la comparaison visible. JSONPath complet, la recherche récursive et les filtres ne sont pas pris en charge. L’association par clé exige que chaque élément soit un objet avec un identifiant textuel ou numérique unique ; une clé absente ou en double produit une erreur claire plutôt qu’un résultat ambigu.
L’export JSON Patch utilise les opérations add, remove et replace de la RFC 6902 et l’échappement des pointeurs de la RFC 6901. Il inclut aussi les différences masquées à l’écran afin de transformer l’original gauche entier en celui de droite. Chaque côté est limité à 5 Mio et traité dans un processus temporaire. Rien n’est téléversé, inscrit dans l’URL, journalisé ou conservé dans le navigateur.
Questions fréquentes
Pourquoi le patch contient-il des changements si le résumé indique zéro ?
Les options masquent des différences dans la vue, mais le patch complet transforme la gauche en droite.
Puis-je utiliser JSONPath complet ?
Non. Seuls $, .nom, [0] et [*] sont acceptés.
Les fichiers sont-ils envoyés ou conservés ?
Non. Lecture et comparaison ont lieu dans la mémoire du navigateur.