Texte

Formateur JSON

Formate, compresse et valide le JSON. Choisissez l'indentation pour une mise en forme lisible ou compressez en une seule ligne. Les erreurs de syntaxe sont détectées instantanément.


Entrée JSON
Résultat formaté JSON valide JSON invalide
{{ result.lines }} lignes / {{ result.bytes.toLocaleString() }} octets
{{ result.error }}

Tips

  • Les clés JSON doivent obligatoirement être entourées de guillemets doubles. Les guillemets simples sont invalides.
  • Les virgules finales ({"a":1,}) sont invalides selon la spécification JSON.
  • La notation scientifique est valide pour les nombres. En revanche, NaN et Infinity sont invalides.
  • Les guillemets doubles dans les chaînes doivent être échappés avec \". Les sauts de ligne s'écrivent \n, les tabulations \t.
  • La compression est efficace pour réduire la taille des fichiers. La version compressée convient aux transferts API, la version formatée aux fichiers de configuration.

Questions fréquentes

En JSON, les clés doivent obligatoirement être entre guillemets doubles, les virgules finales sont interdites, et les valeurs undefined, les fonctions, NaN et Infinity ne sont pas autorisées.

Non. La spécification JSON ne prévoit aucune syntaxe de commentaire. JSON5 ou JSONC sont utilisés comme alternatives.

La RFC 8259 impose UTF-8. Pour des raisons d'interopérabilité, UTF-8 est fortement recommandé.

Non, la spécification JSON ne connaît qu'un seul type number. Les grands entiers dépassant MAX_SAFE_INTEGER en JavaScript peuvent perdre en précision.

Anecdote — Pourquoi JSON a supplanté XML

Au début des années 2000, XML dominait les échanges de données. En 2001, Douglas Crockford a proposé JSON : plus léger, plus simple à manipuler et plus lisible. Depuis les années 2010, JSON est devenu le standard incontournable.

Pour un même jeu de données, JSON est souvent 30 à 50 % moins volumineux que XML. À l'ère des communications mobiles, cela se traduit directement par une meilleure réactivité des applications.

La RFC 8259 précise que les clés dupliquées sont « SHOULD NOT » — interdites sans l'être formellement. {"a":1,"a":2} est syntaxiquement valide, mais son comportement reste indéfini.