Boîte à outils JSON

Formater / minifier / échapper / déséchapper — tout s’exécute dans votre navigateur.

Résultat

Mode d’emploi

  1. Collez du JSON ou n’importe quel texte à gauche, puis choisissez une action ci-dessus : Formater, Minifier, Échapper ou Déséchapper.
  2. « 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.
  3. 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é.

Ce dont on a généralement besoin ensuite, une fois le JSON prêt.