Passer au contenu principal

Formateur/Validateur JSON

Un outil en ligne gratuit pour valider et formater votre JSON.

?Entrez du JSON

📝 JSON d'entrée

Lignes : 0Caractères : 0Taille : 0 bytes

✨ Résultat

Valide et formate le JSON (JavaScript Object Notation). Ajoutez une indentation pour améliorer la lisibilité ou supprimez les espaces pour réduire la taille.

Qu'est-ce que JSON ?​

JSON (JavaScript Object Notation) est un format d'échange de données léger. Il est facile à lire et à écrire pour les humains, et facile à analyser et à générer pour les machines. Il est largement utilisé dans les API Web, les fichiers de configuration et le stockage de données.

Fonctionnalités principales​

  • Validation : Détection des erreurs de syntaxe JSON en temps réel
  • Formatage (Prettify) : Amélioration de la lisibilité avec indentation
  • Compression (Minify) : Réduction de la taille en supprimant les espaces
  • Statistiques en temps réel : Affichage du nombre de lignes, caractères et taille en octets
  • Paramètres d'indentation : Choix entre 2/4/8 espaces
  • Chargement d'exemple : Test rapide avec un JSON exemple

Mode d'emploi​

Validation JSON​

  1. Collez votre JSON dans la zone de saisie
  2. La validation s'effectue en temps réel
  3. Les erreurs sont affichées avec des messages détaillés

Formatage JSON​

  1. Entrez votre JSON
  2. Sélectionnez la taille d'indentation (2/4/8 espaces)
  3. Cliquez sur le bouton "Formater"
  4. Votre JSON formaté apparaît dans la sortie

Compression JSON​

  1. Entrez votre JSON
  2. Cliquez sur le bouton "Compresser"
  3. Le JSON compressé en une seule ligne apparaît dans la sortie

Syntaxe de base JSON​

Types de données​

1. Objet (Object)​

{
"name": "John",
"age": 30
}

2. Tableau (Array)​

["apple", "banana", "orange"]

3. Chaîne (String)​

"Hello World"

4. Nombre (Number)​

42
3.14
-10

5. Booléen (Boolean)​

true
false

6. null​

null

Structure imbriquée​

{
"user": {
"name": "John Doe",
"age": 30,
"emails": ["john@example.com", "doe@example.com"],
"address": {
"city": "New York",
"country": "USA"
},
"active": true,
"lastLogin": null
}
}

Erreurs JSON courantes​

1. Virgule de fin (Trailing Comma)​

// ❌ Incorrect
{
"name": "John",
"age": 30, ← Virgule finale
}

// ✅ Correct
{
"name": "John",
"age": 30
}

2. Guillemets manquants​

// ❌ Incorrect
{
name: "John" ← Pas de guillemets sur la clé
}

// ✅ Correct
{
"name": "John"
}

3. Utilisation de guillemets simples​

// ❌ Incorrect
{
'name': 'John' ← Guillemets simples
}

// ✅ Correct
{
"name": "John"
}

4. Utilisation de commentaires​

// ❌ Incorrect
{
// Ceci est un commentaire
"name": "John"
}

// ✅ JSON ne supporte pas les commentaires
// Utilisez JSONC ou JSON5 si nécessaire

5. Valeurs non définies​

// ❌ Incorrect
{
"name": "John",
"age": undefined ← undefined n'existe pas en JSON
}

// ✅ Correct (utilisez null)
{
"name": "John",
"age": null
}

Cas d'usage​

1. Débogage de réponse API​

// Formatez la réponse reçue de l'API
{
"status": "success",
"data": {
"users": [
{"id": 1, "name": "John"},
{"id": 2, "name": "Jane"}
]
}
}

2. Rédaction de fichier de configuration​

// package.json, tsconfig.json, etc.
{
"name": "my-app",
"version": "1.0.0",
"dependencies": {
"react": "^18.0.0"
}
}

3. Stockage de données​

// Local storage, sauvegarde de fichiers, etc.
{
"theme": "dark",
"language": "fr",
"notifications": true
}

Utilisation par langage de programmation​

JavaScript​

// JSON → Objet (parsing)
const obj = JSON.parse('{"name":"John","age":30}');
console.log(obj.name); // "John"

// Objet → JSON (stringification)
const json = JSON.stringify(obj);
console.log(json); // '{"name":"John","age":30}'

// Formatage (indentation de 2 espaces)
const formatted = JSON.stringify(obj, null, 2);

Python​

import json

# JSON → Dictionnaire
data = json.loads('{"name":"John","age":30}')
print(data['name']) # "John"

# Dictionnaire → JSON
json_str = json.dumps(data)

# Formatage
formatted = json.dumps(data, indent=2)

PHP​

<?php
// JSON → Tableau
$data = json_decode('{"name":"John","age":30}', true);
echo $data['name']; // "John"

// Tableau → JSON
$json = json_encode($data);

// Formatage
$formatted = json_encode($data, JSON_PRETTY_PRINT);
?>

Formatage vs Compression​

Formatage (Prettify)​

Avantages :

  • Facile à lire pour les humains
  • Facilite le débogage
  • Structure claire

Inconvénients :

  • Augmente la taille du fichier
  • Inefficace pour la transmission réseau

Quand l'utiliser :

  • Développement/débogage
  • Fichiers de configuration
  • Documentation

Compression (Minify)​

Avantages :

  • Réduit la taille du fichier (environ 30-50%)
  • Efficace pour la transmission réseau
  • Économise l'espace de stockage

Inconvénients :

  • Difficile à lire pour les humains
  • Complique le débogage

Quand l'utiliser :

  • Environnement de production
  • Réponses API
  • Données volumineuses

Conseils pratiques​

1. Traitement de grands fichiers JSON​

// Utilisez le parsing en streaming
const stream = fs.createReadStream('large.json');
const parser = JSONStream.parse('*');
stream.pipe(parser);

2. Gestion des références circulaires​

const obj = {};
obj.self = obj; // Référence circulaire

// Erreur
// JSON.stringify(obj); // TypeError

// Solution avec replacer personnalisé
const json = JSON.stringify(obj, (key, value) => {
if (key === 'self') return undefined;
return value;
});

3. Traitement des objets Date​

const data = {
name: "John",
created: new Date()
};

// Date → Chaîne ISO 8601
const json = JSON.stringify(data);
// {"name":"John","created":"2022-01-01T00:00:00.000Z"}

Confidentialité​

Cet outil fonctionne entièrement côté client. Le JSON que vous entrez n'est pas envoyé à un serveur et est traité uniquement dans votre navigateur.

💬 Cet outil vous a-t-il été utile ?​

N'hésitez pas à nous faire part de vos commentaires si vous avez des questions ou des suggestions d'amélioration !