Boîte à outils JSON
Formater / minifier / échapper / déséchapper — tout s’exécute dans votre navigateur.
Résultat
Mode d’emploi
- Collez du JSON ou n’importe quel texte à gauche, puis choisissez une action ci-dessus : Formater, Minifier, Échapper ou Déséchapper.
- « Indentation » n’affecte que Formater (2 ou 4 espaces). Les résultats formatés s’affichent dépliés ; utilisez les flèches à côté de chaque ligne pour replier ou déplier les objets et les tableaux.
- La validation automatique indique la ligne et la colonne lorsqu’elle trouve une erreur ; copiez ou téléchargez le résultat, et utilisez le bouton ⇄ à côté de « Effacer » pour le replacer dans la saisie. Ces actions utilisent toujours le résultat complet, même lorsque des parties sont repliées.
Exemple
Saisie
{"utilisateur":{"id":42,"nom":"Ada Lovelace","roles":["admin","editeur"],"actif":true},"score":12345678901234567890}
Formaté
{ "utilisateur": { "id": 42, "nom": "Ada Lovelace", "roles": [ "admin", "editeur" ], "actif": true }, "score": 12345678901234567890 }
Règles par défaut uniquement : indentation de 2 espaces, clés dans l’ordre où vous les avez écrites. Le score de 20 chiffres est imprimé chiffre par chiffre — un aller-retour par JSON.parse le transformerait en 12345678901234567000.
Règles, limites et problèmes connus
- JSON strict (RFC 8259) : les commentaires, virgules finales, guillemets simples, clés sans guillemets, NaN et Infinity sont refusés, et le message indique la correction plutôt que de citer l’analyseur.
- Formater et Minifier ne modifient que les espaces. Les échappements de chaîne, les littéraux numériques et les clés entre guillemets sont imprimés exactement tels que saisis : "\u00e9" reste "\u00e9", 12345678901234567890 reste exact, 1e400 ne devient pas null, -0 reste -0.
- Les clés en double conservent la dernière valeur, comme JSON.parse, et un avertissement nomme la clé. La valeur précédente est abandonnée.
- « Échapper » encode toute la saisie en un unique littéral de chaîne JSON (les guillemets, barres obliques inverses et caractères de contrôle sont échappés ; tout le reste est intact). « Déséchapper » accepte une chaîne complète entre guillemets (vérifiée strictement) ou des séquences d’échappement brutes.
- Les numéros de ligne et de colonne comptent les points de code Unicode : un émoji occupe donc une colonne. Seuls l’espace, la tabulation, le saut de ligne et le retour chariot comptent comme espaces ; U+3000 ou U+00A0 est signalé avec son point de code.
- Limites : 1 000 000 de caractères et 512 niveaux d’imbrication. Au-delà de l’une ou l’autre, vous obtenez une erreur, jamais un résultat tronqué. L’import de fichier lit uniquement le fichier local — rien n’est envoyé.
- Pas de conversion JSON→YAML/XML/CSV, pas de JSON Schema, pas de JSONPath, pas d’éditeur d’arbre, pas de paramètres d’URL, pas d’historique. Tout s’exécute dans votre navigateur : rien n’est envoyé ni stocké.
Outils associés
Ce dont on a généralement besoin ensuite, une fois le JSON prêt.