Qu'est-ce que JSON ? Le guide complet pour débutants
JSON (JavaScript Object Notation) est la langue véhiculaire du web moderne — le format que parlent presque toutes les API, les fichiers de configuration et les bases de données NoSQL. Ce guide parcourt la syntaxe, les six types de données et la façon dont JSON est réellement utilisé.
Qu'est-ce que JSON ?
JSON est un format textuel de représentation de données structurées. Il est dérivé de la syntaxe des littéraux d'objets JavaScript, mais il est agnostique vis-à-vis du langage : presque tous les langages de programmation peuvent lire et produire du JSON.
Il a été introduit par Douglas Crockford au début des années 2000 comme une alternative plus simple à XML. Aujourd'hui, c'est un standard international (ECMA-404 / RFC 8259) et le format par défaut des charges utiles des API REST, de GraphQL et de la plupart des services web.
Bases de la syntaxe JSON
JSON comporte deux structures : les objets (des associations clé/valeur entourées d'accolades) et les tableaux (des listes ordonnées entourées de crochets). Les clés doivent être des chaînes entre guillemets doubles ; les valeurs peuvent être de n'importe lequel des six types de données.
{
"name": "Alice",
"age": 30,
"active": true,
"roles": ["admin", "editor"],
"address": {
"city": "San Francisco",
"zip": "94102"
},
"metadata": null
}Notez les règles : les clés utilisent des guillemets doubles (les apostrophes ne sont pas valides), les éléments sont séparés par des virgules, et il n'y a pas de virgule finale après le dernier élément.
Les six types de données
JSON prend en charge exactement six types de données. Les comprendre constitue la base pour travailler avec n'importe quel JSON.
string — du texte entre guillemets doubles, par ex. "hello". number — des entiers ou des décimaux, par ex. 42 ou 3.14. boolean — true ou false (sans guillemets). null — une valeur vide explicite. object — une association { } de paires clé/valeur. array — une liste ordonnée [ ].
C'est tout. JSON n'a ni dates, ni fonctions, ni undefined — ils doivent être encodés sous forme de chaînes ou omis. Ce minimalisme est précisément ce qui rend JSON si universellement interopérable.
Où JSON est utilisé
API : presque tous les points de terminaison REST et GraphQL échangent du JSON. Configuration : package.json, tsconfig.json et d'innombrables fichiers de configuration d'outils sont en JSON. Bases de données : MongoDB, CouchDB et le type JSONB de PostgreSQL stockent les documents au format JSON. Échange de données : le format de transit entre serveur et navigateur dans les applications web modernes.
FAQ
- JSON est-il identique à un objet JavaScript ?
- Non. Un littéral d'objet JavaScript peut contenir des fonctions, des commentaires, des chaînes entre apostrophes et des virgules finales. JSON est plus strict : clés entre guillemets doubles, pas de fonctions, pas de commentaires. Tout document JSON valide est une expression JavaScript valide, mais l'inverse n'est pas vrai.
- Le JSON peut-il contenir des commentaires ?
- Le JSON standard ne le permet pas. Certains outils (comme le JSONC de VS Code) autorisent les commentaires en tant qu'extension, mais un analyseur strict comme JSON.parse() les rejettera. Si vous avez besoin de commentaires, envisagez JSON5, YAML ou JSONC.
- Quelle est la différence entre JSON et XML ?
- JSON est plus léger (pas de balises fermantes), correspond directement aux structures de données natives et s'analyse plus rapidement. XML est plus verbeux mais prend en charge nativement les attributs, les espaces de noms et les schémas. JSON a gagné pour les API ; XML survit dans les domaines fortement orientés documents.
Articles associés
L'histoire de JSON : de 2000 au standard de l'industrie →
Suivez JSON depuis l'idée de Douglas Crockford en 2001, en passant par son adoption par Yahoo, jusqu'à devenir le standard ECMA-404 qui fait tourner 90 % des API modernes.
Le guide complet de JSON Schema (Draft 7) →
JSON Schema est le standard pour décrire et valider la structure JSON. Apprenez les mots-clés essentiels, construisez un véritable schéma d'API et appliquez les bonnes pratiques.
Exemples JSON en 7 langages : JavaScript, Python, Go, Rust, PHP, Java, C# →
Des exemples prêts pour la production d'analyse et de sérialisation JSON dans sept langages — avec gestion des erreurs et bonnes pratiques.