Diff et comparaison JSON
Comparez deux documents JSON et mettez en évidence les chemins de clés ajoutés, supprimés et modifiés.
Diff et comparaison JSON — Collez deux documents JSON côte à côte et cet outil effectue une comparaison structurelle, clé par clé, plutôt qu'un simple diff ligne par ligne, de sorte que la réorganisation des clés et les espaces ne produisent jamais de fausses modifications. Chaque différence est signalée par son chemin exact, comme user.name ou items[0], et étiquetée comme ajoutée, supprimée ou modifiée. Tout est analysé et comparé entièrement dans votre navigateur, vos données ne quittent donc jamais votre appareil.
Qu'est-ce que Diff et comparaison JSON ?
JSON Diff est un outil gratuit qui s'exécute dans le navigateur et trouve les différences sémantiques entre deux valeurs JSON. Au lieu de comparer le texte ligne par ligne, il parcourt les deux arbres et fait correspondre les clés par nom et les éléments de tableau par index, signalant chaque changement avec un chemin pointé comme config.server.port ou list[2]. Les développeurs backend et d'API l'utilisent pour voir précisément ce qui a changé entre deux réponses d'API, fichiers de configuration ou jeux de données, tandis que les ingénieurs QA et les analystes de données s'en servent pour confirmer qu'une transformation ou une migration a produit le résultat attendu. Choisissez le style Symboles pour lire les changements sous forme de lignes + / - / ~, ou le style Mots pour les étiqueter comme ajouté, supprimé et modifié. Le bouton Permuter inverse les entrées gauche et droite afin que vous puissiez voir le diff dans les deux sens.
Comment utiliser Diff et comparaison JSON
- Collez le JSON d'origine dans la case Gauche (original).
- Collez le JSON que vous voulez comparer dans la case Droite (modifié).
- Lisez le diff dans le bloc Résultat, où chaque ligne affiche le chemin et la valeur modifiés.
- Utilisez le réglage Style pour basculer entre les symboles + / - / ~ et les mots ajouté / supprimé / modifié.
- Cliquez sur Permuter pour inverser les deux côtés, ou sur Copier pour récupérer le rapport de diff complet.
Exemples
Une seule valeur a changé
Entrée
Gauche : {"name":"Ada","age":30}
Droite : {"name":"Ada","age":31}Sortie
~ age: 30 -> 31
Une clé ajoutée et une supprimée
Entrée
Gauche : {"a":1,"b":2}
Droite : {"a":1,"c":3}Sortie
- b: 2 + c: 3
Les clés réorganisées sont identiques
Entrée
Gauche : {"x":1,"y":2}
Droite : {"y":2,"x":1}Sortie
Aucune différence - les deux documents sont identiques.
Questions fréquentes
- Mon JSON est-il envoyé à un serveur ?
- Non. Les deux documents sont analysés et comparés entièrement dans votre navigateur avec une routine de comparaison approfondie qui s'exécute sur votre appareil. Rien n'est téléversé et l'outil continue de fonctionner hors ligne.
- En quoi est-ce différent d'un diff de texte classique ?
- Un diff de texte compare les lignes, si bien qu'un reformatage ou une réorganisation des clés ressemble à un changement. Cet outil compare la structure analysée, faisant correspondre les clés d'objet par nom et les éléments de tableau par position, de sorte que seules les vraies différences sémantiques sont signalées.
- L'ordre des clés a-t-il de l'importance ?
- Non. Deux objets ayant les mêmes clés et valeurs sont considérés comme égaux quel que soit l'ordre d'apparition des clés. En revanche, les éléments de tableau sont comparés par index, donc réorganiser un tableau compte bien comme un changement.
- Que signifie chaque ligne ?
- Les chemins ajoutés n'existent qu'à droite, les chemins supprimés seulement à gauche, et les chemins modifiés ont des valeurs différentes de chaque côté. Dans le style Symboles, ils apparaissent comme +, - et ~ ; dans le style Mots, ils sont écrits en toutes lettres.
- Que se passe-t-il si mon JSON est invalide ?
- Si l'un des côtés échoue à l'analyse, une note d'erreur vous indique quel côté (gauche ou droite) est invalide afin que vous puissiez le corriger. Le diff se met à jour automatiquement une fois que les deux côtés sont analysés correctement.
Outils connexes
Encoder / décoder Base32 / Base58
Encode du texte en Base32 (RFC 4648) ou Base58 (l'alphabet Bitcoin) et décode l'un comme l'autre vers du texte, entièrement compatible UTF-8 et directement dans ton navigateur.
Encoder / décoder en Base64
Encodez ou décodez du Base64 (compatible UTF-8) avec un alphabet URL-safe, remplissage optionnel, retour à la ligne 64/76, comptage d'octets et de caractères en direct et une vue octets en hex ou binaire.
Convertisseur de casse et compteur
Convertissez du texte entre UPPERCASE, camelCase, PascalCase, snake_case, CONSTANT_CASE, kebab-case, dot.case et plus, et comptez caractères, mots et lignes.
Formateur et minificateur de code
Embellissez ou minifiez HTML, CSS et JavaScript instantanément dans votre navigateur, avec une indentation de 2 espaces, 4 espaces ou tabulation et une compression JavaScript propulsée par Terser.