Convertisseur Gratuit

Formateur JSON et Validateur

Formatez, embellissez et validez du JSON instantanément dans votre navigateur. Aucun téléchargement requis — entièrement privé et gratuit.

Glissez-déposez un fichier JSON ici

Prend en charge les fichiers .json. Ou collez votre JSON ci-dessus.

Ou

À propos de cet outil

Le formatage JSON (souvent appelé jolie impression ou embellissement) prend du JSON compact et ajoute des espaces (sauts de ligne, indentation, espacement cohérent) pour rendre la structure visible aux lecteurs humains. Compact JSON est le format idéal pour la transmission : il minimise les octets sur le réseau et le stockage. Le JSON formaté est le format idéal pour l'inspection : la hiérarchie en retrait révèle d'un seul coup d'œil la structure imbriquée, donne du sens aux différences et permet aux développeurs de localiser des champs spécifiques sans analyser mentalement le document.

Ce formateur analyse l'entrée au format JSON pour confirmer qu'elle est valide, puis la réémet avec une indentation cohérente. Une entrée invalide produit une erreur pointant vers le problème de syntaxe. Les entrées valides sont reformatées, quel que soit le degré de compacité ou de désordre de la source. L'indentation est par défaut de deux espaces, ce qui correspond à la convention JavaScript la plus courante.

Le formateur propose également une minification (l'opération inverse), qui supprime tous les espaces inutiles pour produire le plus petit JSON valide. La production réduite est utile pour la transmission de la production ; la sortie formatée est utile pour le développement et le débogage.

Pourquoi formater JSON

La lecture de JSON profondément imbriqué sans indentation est essentiellement impossible : la structure est techniquement présente mais invisible. Même un JSON modérément complexe bénéficie énormément du formatage. Les réviseurs de code, les débogueurs d'API et toute personne essayant de comprendre une charge utile de données doivent formater JSON pour voir ce qui s'y trouve réellement.

Le formatage détecte également les erreurs. Si JSON ne parvient pas à être analysé lors du formatage, le message d'erreur identifie la position exacte du problème de syntaxe : souvent une virgule manquante, une clé non citée ou une virgule de fin parasite que le système producteur n'a pas signalée. Un formateur est le validateur JSON le plus simple disponible.

Comment l'utiliser

Collez JSON, cliquez sur format.

  1. Collez votre JSON: Collez du JSON brut ou compact dans la zone de saisie. Le glisser-déposer de fichiers .json fonctionne également.
  2. Choisir l'indentation: La valeur par défaut est 2 espaces. Utilisez 4 espaces pour les projets qui suivent cette convention, ou des onglets si vos outils en aval l'exigent.
  3. Formater: L'entrée est analysée via JSON.parse pour confirmer la validité, puis sérialisée avec JSON.stringify et l'indentation choisie. Les erreurs dans l'entrée produisent un message d'erreur d'analyse identifiant l'emplacement du problème.
  4. Copier ou télécharger: Copiez le JSON formaté dans le presse-papiers ou enregistrez-le au format .json. La sortie est structurellement identique à l’entrée mais avec des espaces cohérents.

Cas d'utilisation courants

Détails techniques

Le formateur utilise JSON.parse et JSON.stringify, la même paire fournie par chaque runtime JavaScript. L'analyse suit la RFC 8259 (la spécification JSON actuelle), acceptant le JSON strict mais rejetant les littéraux d'objet JavaScript, les commentaires, les virgules de fin et autres extensions JSON5.

JSON.stringify accepte un argument d'indentation : un nombre (espaces) ou une chaîne (caractère d'indentation personnalisé, tel qu'une tabulation). Le formateur expose les deux options. La sortie est triée dans l'ordre source des objets (depuis ES2015, l'ordre d'insertion des propriétés est préservé dans tous les principaux moteurs).

Cas extrêmes : les grands nombres au-delà de Number.MAX_SAFE_INTEGER perdent en précision lors de l'analyse (une limitation JSON connue ; utilisez des valeurs de chaîne pour les ID qui dépassent 2 ^ 53). Les échappements Unicode dans les chaînes sont conservés littéralement. Les espaces de fin sont supprimés de chaque ligne.

Meilleures pratiques

Questions fréquentes

Quels types d’erreurs JSON cet outil détecte-t-il ?
L'outil détecte les virgules manquantes, les crochets/accolades sans correspondance, les chaînes non valides qui s'échappent, les virgules de fin, les chaînes entre guillemets simples et d'autres violations de syntaxe conformément à la spécification RFC 8259 JSON.
Peut-il gérer de très gros fichiers JSON ?
Oui. Le formateur traite JSON dans votre navigateur à l'aide de l'analyse JavaScript native, de sorte qu'il gère efficacement les fichiers jusqu'à plusieurs mégaoctets. Pour les fichiers extrêmement volumineux (50 Mo+), le temps de traitement dépend de votre appareil.
Prend-il en charge JSON avec commentaires (JSONC) ?
Le JSON standard n'autorise pas les commentaires. Si votre entrée contient des commentaires, le validateur les signalera comme des erreurs. Pour la prise en charge de JSONC, supprimez les commentaires avant le formatage.
Le formatage modifiera-t-il les valeurs de mes données ?
Non. Le formatage ajuste uniquement les espaces et l'indentation : vos types de données, leurs valeurs et leur structure restent exactement les mêmes.
Les fonctionnalités JSON5 sont-elles prises en charge (commentaires, virgules finales) ?
Non. Le formateur suit strictement la RFC 8259. Les fonctionnalités JSON5 provoquent des erreurs d’analyse. Pour travailler avec JSON5, convertissez-le d'abord en JSON standard à l'aide d'un analyseur JSON5.
Mon JSON est-il téléchargé sur un serveur ?
Non. L'analyse et le formatage s'effectuent entièrement dans votre navigateur à l'aide des fonctions JSON intégrées.
Les grands nombres perdront-ils en précision ?
JavaScript représente les nombres sous forme de flottants 64 bits, donc les entiers supérieurs à 2 ^ 53 (environ 9 quadrillions) perdent en précision. Pour les ID ou autres grandes valeurs entières, stockez-les sous forme de chaînes dans JSON.
Puis-je trier les clés par ordre alphabétique ?
JSON.stringify ne trie pas les clés. Utilisez une étape de tri distincte (ou un formateur avec prise en charge du tri) pour classer les clés par ordre alphabétique avant de les chaîner.