Passer au contenu

Formateur JSON : Minifier et Embellir JSON en Ligne Gratuitement

Formateur JSON gratuit pour minifier et embellir JSON instantanément. Compressez JSON, validez la syntaxe et affichez joliment avec une indentation appropriée. Outil rapide et sécurisé basé sur navigateur.

Formateur JSON

Calculateur de chargement...
📚

Documentation

Formateur JSON : minifier et embellir le JSON

Un formateur JSON est un outil qui réécrit un texte JSON selon une autre mise en page sans modifier les données qu’il contient. Ce formateur JSON effectue deux opérations : il minifie le JSON en supprimant les espaces superflus, et il l’embellit en ajoutant une indentation et des retours à la ligne pour le rendre lisible.

Qu’est-ce que le JSON ?

JSON, abréviation de JavaScript Object Notation, est un format texte destiné au stockage et à l’envoi de données. Les serveurs web l’utilisent pour envoyer des informations aux applications et aux navigateurs. Les programmes l’utilisent pour les fichiers de paramètres. Il stocke les données sous forme d’objets, écrits avec des accolades {}, et de tableaux, écrits avec des crochets []. Dans un objet, chaque donnée possède un nom, appelé clé, et une valeur. Une valeur peut être une chaîne de caractères, un nombre, true, false, null, ou un autre objet ou tableau.

Un petit objet JSON ressemble à ceci :

1{
2  "name": "John Doe",
3  "age": 30,
4  "isEmployee": true
5}
6

Fonctionnement de ce formateur JSON

Certains outils JSON lisent le texte dans la structure de données propre à un langage de programmation, puis réécrivent cette structure sous forme de texte. Cette conversion aller-retour peut modifier les données. Elle peut réécrire les nombres très grands, supprimer les nombres trop grands pour être représentés et réordonner les clés d’un objet.

Cet outil évite ce problème. Il lit l’entrée caractère par caractère et vérifie qu’elle respecte la grammaire JSON. Lorsqu’il réécrit la sortie, il recopie chaque nombre et chaque chaîne exactement comme ils ont été saisis, dans le même ordre. La minification ou l’embellissement d’un document ne modifie jamais un nombre, une clé, l’ordre des clés ni une clé en double.

Si le texte n’est pas du JSON valide, l’outil s’arrête et affiche une erreur au lieu de deviner ce qui était voulu.

La mise en forme s’effectue dans le navigateur. L’outil n’envoie pas le texte collé à un serveur. L’entrée est ajoutée à l’adresse web de la page comme paramètre de requête, ce qui permet de partager ou d’ajouter à ses favoris un document mis en forme au moyen d’un lien.

Comment minifier du JSON

  1. Collez le JSON dans la zone de saisie.
  2. Cliquez sur « Minify ».
  3. L’outil supprime les espaces, les tabulations et les retours à la ligne entre les jetons, puis affiche le résultat ci-dessous.
  4. Cliquez sur « Copy » au-dessus du résultat pour le copier.

Exemple détaillé

Avant :

1{
2  "name": "John Smith",
3  "age": 32,
4  "skills": [
5    "JavaScript",
6    "HTML",
7    "CSS"
8  ]
9}
10

Après :

1{"name":"John Smith","age":32,"skills":["JavaScript","HTML","CSS"]}
2

Formule de minification du JSON

L’espace économisé par la minification peut s’écrire ainsi :

Espace eˊconomiseˊ=(1−taille minifieˊetaille d’origine)×100%\text{Espace économisé} = \left(1 - \frac{\text{taille minifiée}}{\text{taille d’origine}}\right) \times 100\%

Dans l’exemple ci-dessus, la version mise en forme fait 98 octets et la version minifiée en fait 67 :

(1−6798)×100%≈32%\left(1 - \frac{67}{98}\right) \times 100\% \approx 32\%

L’économie exacte dépend de la quantité d’espaces blancs et d’indentation présente dans le document d’origine. Un document avec un niveau d’imbrication profond et une indentation de 4 espaces rétrécit davantage qu’un document qui était déjà compact.

Comment embellir du JSON

  1. Collez le JSON dans la zone de saisie. Il peut déjà être minifié ou avoir une mise en forme désordonnée.
  2. Cliquez sur « Beautify ».
  3. L’outil ajoute une indentation de 2 espaces, un retour à la ligne par clé ou élément de tableau, ainsi qu’une espace après chaque deux-points.
  4. Cliquez sur « Copy » au-dessus du résultat pour le copier.

Exemple détaillé

Avant :

1{"name":"John Smith","age":32,"skills":["JavaScript","HTML","CSS"]}
2

Après :

1{
2  "name": "John Smith",
3  "age": 32,
4  "skills": [
5    "JavaScript",
6    "HTML",
7    "CSS"
8  ]
9}
10

Un objet ou un tableau vide reste sur une seule ligne, comme {} ou [], au lieu d’être réparti sur trois lignes.

Erreurs JSON courantes détectées par cet outil

Le JSON possède une grammaire stricte, plus stricte que celle d’un langage de programmation courant. Cet outil rejette les textes qui enfreignent l’une de ces règles et affiche le message « Invalid JSON » au lieu d’un résultat :

  • Une virgule manquante entre deux valeurs.
  • Une virgule finale après le dernier élément d’un objet ou d’un tableau (interdite en JSON, contrairement à JavaScript).
  • Une clé qui n’est pas entourée de guillemets doubles.
  • Des guillemets simples autour d’une chaîne au lieu de guillemets doubles.
  • Des crochets ou des accolades incompatibles ou manquants.
  • Une séquence d’échappement non valide ou incomplète dans une chaîne, telle qu’une barre oblique inverse isolée.
  • Un caractère de contrôle, comme un véritable saut de ligne ou une tabulation, saisi dans une chaîne au lieu d’être écrit comme \n ou \t.
  • Un nombre écrit sous une forme interdite par JSON, comme un zéro initial (01), un point décimal final (1.) ou un signe plus initial (+1).

Le JSON ne possède pas non plus de syntaxe pour les commentaires. Un texte commençant par // ou /* ne fait pas partie de la grammaire JSON ; coller du JSON contenant des commentaires produit donc une erreur « Invalid JSON » plutôt qu’un JSON dont les commentaires auraient été discrètement supprimés. Pour mettre un tel fichier en forme, supprimez d’abord les commentaires.

Cas d’utilisation d’un formateur JSON

  • Développement web : lecture des réponses d’API pendant le débogage et minification des fichiers de configuration avant le déploiement.
  • Développement d’API : vérification qu’un corps de requête ou de réponse est un JSON correctement formé.
  • Analyse de données : transformation d’une exportation JSON compacte en une présentation lisible pour l’inspecter.
  • Fichiers de configuration : embellissement d’un fichier de configuration avant sa modification manuelle, puis nouvelle minification après celle-ci.

Alternatives

Les éditeurs de code tels que Visual Studio Code peuvent mettre en forme les fichiers JSON sans quitter l’éditeur. Les outils en ligne de commande tels que jq peuvent mettre en forme et filtrer le JSON dans le cadre d’un script. Les langages de programmation fournissent également des bibliothèques JSON, comme le module json de Python ou l’objet JSON intégré à JavaScript, que la plupart des programmes utilisent pour analyser le JSON et le convertir en leurs propres structures de données. Un formateur en ligne comme celui-ci est utile lorsqu’une vérification ponctuelle doit être effectuée rapidement, sans rien installer.

Historique du JSON

Douglas Crockford a défini le JSON au début des années 2000, en s’inspirant de la manière dont JavaScript écrit les littéraux d’objet, mais en le concevant pour qu’il puisse être lu et écrit par n’importe quel langage de programmation. Le format a été documenté publiquement pour la première fois vers 2001, puis normalisé comme RFC 4627 en (11 800 cm) 2006, comme ECMA-404 en (1 030 cm) 2013, et comme RFC 8259 en (21 000 cm) 2017. À mesure que les API web se sont développées au cours des années 2000, le JSON a remplacé XML comme format le plus courant pour envoyer des données entre les serveurs et les navigateurs, principalement parce qu’il est plus court et correspond directement aux structures de données déjà intégrées à JavaScript. Les outils de mise en forme et de validation sont apparus à mesure que les documents JSON devenaient plus volumineux et plus imbriqués.

Foire aux questions

La minification supprime-t-elle les commentaires du JSON ? Non. Le JSON ne possède pas de syntaxe de commentaire et cet outil n’en ajoute pas. Si l’entrée contient des commentaires de type // ou /*, l’outil signale une erreur « Invalid JSON » au lieu de la mettre en forme. Supprimez les commentaires avant de coller le texte.

La mise en forme modifie-t-elle mes nombres ou l’ordre de mes clés ? Non. L’outil recopie chaque nombre et chaque chaîne exactement tels qu’ils ont été écrits et conserve les clés dans leur ordre d’origine, y compris les clés en double, le cas échéant.

Quelle indentation utilise l’outil d’embellissement ? Deux espaces par niveau d’imbrication, avec une espace après chaque deux-points.

Mes données JSON sont-elles envoyées à un serveur ? Non. La mise en forme s’exécute dans le navigateur. Le texte que vous collez est copié dans l’URL de la page comme paramètre de requête json, afin que la page puisse être partagée ou ajoutée aux favoris. Rien n’est téléversé.

Existe-t-il une limite de taille ? Il n’existe aucune limite fixe, mais le document entier est conservé en mémoire pendant son analyse ; un fichier très volumineux, de plusieurs mégaoctets, peut donc être lent sur un appareil ancien.

Un JSON invalide est-il simplement corrigé en partie ? Non. Si l’entrée enfreint la grammaire JSON, ne serait-ce qu’à un endroit, l’outil affiche une erreur au lieu de renvoyer un résultat partiel ou supposé.

Références

  1. "Introducing JSON." JSON.org, https://www.json.org/json-en.html.
  2. Bray, T., dir. "The JavaScript Object Notation (JSON) Data Interchange Format." RFC 8259, IETF, décembre 2017, https://www.rfc-editor.org/rfc/rfc8259.
  3. "ECMA-404: The JSON Data Interchange Syntax." Ecma International, https://www.ecma-international.org/publications-and-standards/standards/ecma-404/.
  4. "JSON." MDN Web Docs, Mozilla, https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON.