JSON formatter online : tout savoir sur le format JSON et sa mise en forme
Qu'est-ce que le format JSON ?
Le JSON (JavaScript Object Notation) est un format d'échange de données léger, lisible par les humains et facile à analyser pour les machines. Défini par la RFC 8259 (IETF, 2017) et la norme ECMA-404, il est devenu le standard de facto pour les API REST, les fichiers de configuration et la communication entre services web. Contrairement au XML, le JSON ne nécessite ni balises de fermeture ni attributs, ce qui le rend plus compact et plus rapide à parser.
Un document JSON peut contenir six types de valeurs : les objets (paires clé/valeur entre accolades), les tableaux (listes entre crochets), les chaînes de caractères (entre guillemets doubles), les nombres, les booléens (true/false) et la valeur null. Les clés doivent toujours être des chaînes entre guillemets doubles, ce qui distingue le JSON du JavaScript natif.
{ "clé": valeur, "tableau": [1, 2, 3], "objet": { "imbriqué": true } }
Pourquoi formater du JSON ?
Le formatage JSON (ou pretty-print) ajoute des indentations et des sauts de ligne pour rendre la structure visible. Un JSON minifié sur une seule ligne est idéal pour le transfert réseau, mais il devient illisible dès que le document dépasse quelques propriétés. Le formatage facilite le débogage, la revue de code et la compréhension des structures de données imbriquées.
Les développeurs formatent du JSON quotidiennement lors du développement d'API, de l'inspection de réponses HTTP, de l'édition de fichiers package.json ou tsconfig.json, et du débogage de webhooks. Un formateur en ligne offre l'avantage de ne nécessiter aucune installation et de fonctionner sur tout appareil disposant d'un navigateur.
90 %
des API publiques utilisent JSON comme format d'échange principal (source : Postman State of the API 2024)
Formater, minifier et valider : trois opérations distinctes
Comparaison des trois opérations JSON
Ajoute indentation et sauts de ligne
Supprime tous les espaces superflus
Vérifie la conformité à la RFC 8259
Chaque opération répond à un besoin différent dans le workflow de développement
Le formatage transforme un JSON compact en version lisible avec indentation. La minification réalise l'opération inverse : elle supprime les espaces, tabulations et sauts de ligne pour réduire la taille du fichier. La validation vérifie que le document respecte la syntaxe JSON définie par la RFC 8259 et retourne la position exacte de l'erreur en cas de problème.
Conventions d'indentation JSON
La RFC 8259 ne prescrit aucune indentation particulière. En pratique, trois conventions coexistent dans l'écosystème :
2 espaces
Standard
Node.js, npm, Prettier, VS Code
4 espaces
Courant
Python json.dumps, .NET
L'indentation à 2 espaces est le choix dominant dans l'écosystème JavaScript et Node.js. La commande JSON.stringify(obj, null, 2) est la plus utilisée. L'indentation à 4 espaces est courante dans les environnements Python et Microsoft. Les tabulations offrent une indentation compacte dont la largeur visuelle est configurable dans chaque éditeur, mais elles sont plus rares en JSON.
Conseil pratique
"tabWidth": 2 et "useTabs": false. Cela garantit une cohérence entre vos fichiers JSON et votre code source.Erreurs fréquentes à éviter
- Virgule finale (trailing comma). Contrairement au JavaScript, le JSON interdit la virgule après le dernier élément d'un objet ou d'un tableau.
{"a": 1,}est invalide. - Guillemets simples. Le JSON impose les guillemets doubles pour les chaînes et les clés.
{'clé': 'valeur'}provoquera une erreur de syntaxe. - Commentaires. Le format JSON ne supporte pas les commentaires (
//ou/* */). Pour les fichiers de configuration, vous pouvez utiliser JSON5 ou JSONC (JSON with Comments), supporté par VS Code pour les fichierstsconfig.json. - Valeurs non quotées. Les clés sans guillemets (
{name: "test"}) sont du JavaScript valide mais du JSON invalide. - Caractères de contrôle non échappés. Les retours à la ligne, tabulations et autres caractères de contrôle doivent être échappés dans les chaînes (
\n,\t).
JSON dans l'écosystème web moderne
Le JSON est omniprésent dans le développement web. Les API REST l'utilisent comme format de requête et de réponse via le type MIME application/json. Les outils de build comme Vite, Webpack et esbuild lisent leurs configurations en JSON. Les gestionnaires de paquets (package.json, composer.json) stockent les dépendances en JSON. Les bases de données comme PostgreSQL et MongoDB supportent nativement le stockage et les requêtes JSON.
Pour encoder vos données en Base64 avant de les transmettre, utilisez notre encodeur/décodeur Base64. Si vous travaillez avec des requêtes SQL, notre formateur SQL vous permettra de structurer vos requêtes de la même façon.
Sources et références
- RFC 8259 - The JSON Data Interchange Format (IETF, 2017).
- ECMA-404 - The JSON Data Interchange Syntax (Ecma International, 2017).
- MDN Web Docs - JSON : documentation de référence JavaScript.
- json.org : site officiel du format JSON.