📋
developpement

JSON

Format de données textuel léger pour l'échange de données entre systèmes.

Définition

JSON (JavaScript Object Notation) est un format de données textuel léger, lisible par les humains et facile à parser par les machines. C'est le format d'échange standard pour les API web, les fichiers de configuration et le stockage de données structurees.

Bien que derive de JavaScript, JSON est un format indépendant du langage, supporte par tous les langages de programmation modernes.

Syntaxe

{
  "nom": "Alice Dupont",
  "age": 30,
  "email": "alice@exemple.com",
  "actif": true,
  "adresse": {
    "rue": "123 rue de la Paix",
    "ville": "Paris",
    "cp": "75001"
  },
  "langages": ["Python", "JavaScript", "Go"],
  "manager": null
}

Types de données JSON

Type Exemple Equivalent JavaScript
String "hello" string
Number 42, 3.14 number
Boolean true, false boolean
Array [1, 2, 3] Array
Object {"key": "value"} Object
null null null

Attention : JSON ne supporte pas les commentaires, les dates (utilisez des strings ISO 8601), ni les valeurs undefined ou NaN.

Manipulation en JavaScript

// Objet → JSON string
const json = JSON.stringify({ nom: "Alice", age: 30 });
// '{"nom":"Alice","age":30}'

// JSON string → Objet
const obj = JSON.parse('{"nom":"Alice","age":30}');
// { nom: "Alice", age: 30 }

// Pretty print
JSON.stringify(data, null, 2);

JSON dans les API

// Requete API avec JSON
const response = await fetch('/api/users', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ nom: 'Alice', email: 'alice@exemple.com' }),
});
const data = await response.json();

JSON Schéma

JSON Schéma permet de valider la structure d'un document JSON :

{
  "type": "object",
  "required": ["nom", "email"],
  "properties": {
    "nom": { "type": "string", "minLength": 1 },
    "email": { "type": "string", "format": "email" },
    "age": { "type": "integer", "minimum": 0 }
  }
}

Alternatives à JSON

Format Avantage Cas d'usage
YAML Plus lisible, commentaires Configuration
TOML Simple, sections Configuration (Rust, Go)
Protocol Buffers Binaire, performant, type gRPC, communication inter-services
MessagePack JSON binaire, compact Cache, stockage compact
XML Schéma strict, namespaces Enterprise, SOAP

Besoin d'aide technique ?

Decrivez votre projet pour des conseils personnalises par nos experts.

Recevoir des conseils

Questions fréquentes

JSON ou YAML pour la configuration ?
YAML est plus lisible pour la configuration humaine (commentaires, pas de guillemets). JSON est meilleur pour l'echange de donnees machine-to-machine et les API.
Comment valider du JSON en production ?
Utilisez JSON Schema avec une librairie de validation (Ajv en JS, jsonschema en Python). Validez a la frontiere de votre systeme : API endpoints, import de fichiers, webhooks.
Pourquoi JSON ne supporte-t-il pas les commentaires ?
Douglas Crockford (createur de JSON) a deliberement exclu les commentaires pour eviter que les gens les utilisent comme directives de parsing. Pour la configuration avec commentaires, utilisez JSONC, JSON5 ou YAML.

Pages liées

Chaque semaine, le meilleur de la tech française

Tendances, salaires, outils et opportunités — directement dans votre boîte mail.

Gratuit. Desabonnement en un clic. Pas de spam.