CoderTools

Formateur JSON

Formatez et validez vos données JSON pour les rendre plus faciles à lire et à déboguer. Prend en charge les fonctions de minification, d'embellissement et de coloration syntaxique.

Saisie JSON

Résultat formaté

Comment utiliser le formateur JSON

Étapes d'utilisation

  1. Collez vos données JSON dans la zone de saisie à gauche.
  2. Cliquez sur le bouton "Formater" pour mettre en forme les données JSON de manière lisible.
  3. Cliquez sur le bouton "Minifier" pour compresser les données JSON en une seule ligne.
  4. Cliquez sur le bouton "Correction auto" pour corriger automatiquement les erreurs de syntaxe JSON courantes.
  5. Cliquez sur le bouton "Copier" pour copier le résultat dans le presse-papiers.
  6. Cliquez sur le bouton "Effacer" pour vider les zones d'entrée et de sortie.
  7. Utilisez le commutateur "Échapper la sortie" pour échapper la sortie pour l'intégration dans le code du programme.
  8. Utilisez le commutateur "Mode sombre" pour changer le thème d'affichage.

Exemple d'échappement de sortie

Lorsque l'échappement de sortie est activé, les chaînes JSON sont échappées pour l'intégration directe dans le code du programme. Par exemple :

Sortie normale ::

{ "message": "Hello \"World\"", "newline": "Line 1\nLine 2" }

Sortie échappée ::

{\n \"message\": \"Hello \\\"World\\\"\",\n \"newline\": \"Line 1\\nLine 2\"\n}

Caractéristiques

  • Format automatique : embellissez vos données JSON avec une indentation et des sauts de ligne appropriés.
  • Validation syntaxique : vérifiez les erreurs de syntaxe dans vos données JSON et fournissez des messages d'erreur.
  • Coloration syntaxique : marquez les paires clé-valeur JSON et les types de données avec différentes couleurs.
  • Fonction de minification : convertissez le JSON formaté en une forme compacte d'une seule ligne pour réduire la taille des données.
  • Correction automatique : corrigez automatiquement les erreurs de syntaxe JSON courantes comme les clés non quotées et les virgules de fin.
  • Échapper la sortie : échappez les chaînes JSON pour l'intégration directe dans le code du programme.
  • Traitement local : tout le traitement des données est effectué dans votre navigateur, rien n'est téléchargé sur les serveurs.
  • Traitement en temps réel : les changements d'entrée sont automatiquement traités et les résultats sont mis à jour.

Qu'est-ce que JSON?

JSON (JavaScript Object Notation) est un format léger d'échange de données facile à lire et à écrire pour les humains, et facile à analyser et à générer pour les machines. JSON est basé sur un sous-ensemble du langage JavaScript, mais c'est un format texte complètement indépendant du langage pris en charge par la plupart des langages de programmation pour l'analyse et la génération. JSON a été proposé par Douglas Crockford au début des années 2000 et a été normalisé dans ECMA-404 et RFC 8259.

Règles de syntaxe JSON

  • Les données sont représentées sous forme de paires clé/valeur
  • Les données sont séparées par des virgules
  • Les accolades {} contiennent des objets
  • Les crochets [] contiennent des tableaux
  • Les clés doivent être des chaînes entre guillemets doubles
  • Les valeurs peuvent être des chaînes, des nombres, des objets, des tableaux, des booléens ou null

Types de données JSON

Type Description Exemple
Chaîne Séquence de caractères Unicode entre guillemets doubles "Hello World"
Nombre Entier ou nombre à virgule flottante, valeurs non numériques non prises en charge 42, 3.14
Objet Collection non ordonnée de paires clé/valeur {"name": "John"}
Tableau Collection ordonnée de valeurs [1, 2, 3]
Booléen true ou false true
null Valeur vide null

Algorithme de formatage JSON

Le processus de formatage JSON implique principalement deux étapes : l'analyse et la régénération. D'abord, l'analyseur lit la chaîne JSON et construit une représentation en mémoire, puis le formateur régénère la chaîne avec une indentation spécifique et des sauts de ligne. Voici un processus de formatage simplifié :

// Simplified JSON formatting implementation
function formatJSON(jsonStr, indentSize = 2) {
  try {
    // Step 1: Parse JSON string to JavaScript object
    const obj = JSON.parse(jsonStr);
    
    // Step 2: Convert object back to string with indentation
    return JSON.stringify(obj, null, indentSize);
  } catch (e) {
    // Handle invalid JSON
    throw new Error("Invalid JSON: " + e.message);
  }
}

// Usage example
const uglyJson = '{"name":"John","age":30,"city":"New York"}';
const prettyJson = formatJSON(uglyJson);
console.log(prettyJson);
/*
Output:
{
  "name": "John",
  "age": 30,
  "city": "New York"
}
*/

Comparaison de JSON et XML

Fonctionnalité JSON XML
Syntaxe Concis, utilisant des accolades et des crochets Plus complexe, utilisant des balises et des attributs
Taille du fichier Généralement plus petit que XML Généralement plus grand que JSON
Vitesse d'analyse Plus rapide Plus lent
Types de données Prend en charge les types de données de base Toutes les données sont du texte
Espaces de noms Non pris en charge Pris en charge
Commentaires Non pris en charge Pris en charge
Utilisabilité Plus convivial pour les développeurs Plus structuré et rigoureux

Problèmes courants et solutions

Problème : erreur d'analyse JSON - virgule ou parenthèse manquante

Solution : vérifiez toutes les parenthèses fermantes des objets et des tableaux, assurez-vous que chaque paire clé/valeur est suivie d'une virgule (sauf la dernière).

Problème : erreur d'analyse JSON - valeur de clé non valide

Solution : assurez-vous que toutes les clés sont entourées de guillemets doubles, les guillemets simples ou les noms de clés non entourés de guillemets ne sont pas pris en charge.

Problème : problème de taille des données JSON

Solution : pour les données JSON volumineuses, envisagez d'utiliser la version compressée pour la transmission, puis formatez-la pour l'affichage sur le client.

Pour plus d'informations officielles sur JSON, veuillez consulter les ressources suivantes : JSON.org | RFC 8259 | Wikipédia: JSON