Qu'est-ce que JSON ? Guide Débutant avec Syntaxe, Exemples

JSON (JavaScript Object Notation) est un format texte pour échange données — keys, valeurs, arrays, objects. Universel en APIs, configs, bases NoSQL.

Qu'est-ce que JSON ?

JSON (JavaScript Object Notation) est un format données léger, basé sur texte, pour représenter des données structurées. Malgré le nom, il est language-agnostique — chaque langage moderne a des libraries pour le parser et le générer.

Syntaxe basique JSON

JSON a six types de données :

  • Object : collection key-value dans {}
  • Array : liste ordonnée dans []
  • String : texte dans "guillemets doubles"
  • Number : integer ou float
  • Boolean : true ou false
  • null

Exemple JSON

{
  "id": 42,
  "name": "Alice Johnson",
  "email": "alice@example.com",
  "active": true,
  "preferences": {
    "language": "en",
    "notifications": false
  },
  "tags": ["admin", "beta-tester"]
}

Règles syntaxe JSON

  • Les keys doivent être des strings, en guillemets doubles
  • Les strings doivent utiliser des guillemets doubles
  • Pas de trailing commas
  • Pas de commentaires
  • Pas d'undefined ; utiliser null

Opérations JSON courantes

Parse JSON

const data = JSON.parse('{"id": 42}');

import json
data = json.loads('{"id": 42}')

Stringify JSON

const json = JSON.stringify({ id: 42, name: 'Alice' });

JSON vs XML vs YAML

FeatureJSONXMLYAML
VerbositéBasseHautePlus basse
CommentairesNonOuiOui
Validation schemaJSON SchemaXSDJSON Schema
Meilleur pourAPIs, configDonnées documentConfigs, k8s

JSON dans APIs REST

POST /api/users HTTP/1.1
Content-Type: application/json

{ "email": "alice@example.com", "name": "Alice" }

JSON Schema

{
  "type": "object",
  "required": ["email", "name"],
  "properties": {
    "email": { "type": "string", "format": "email" },
    "name": { "type": "string", "minLength": 1 }
  }
}

Best practices JSON

  • ISO 8601 pour dates.
  • Naming consistant.
  • Valider contre schema.
  • Compresser avec gzip/Brotli.
  • null sur keys manquantes.
  • Numbers dans range safe JS.
  • Pas de binaire dans JSON.
  • Stream gros arrays.

Pièges JSON courants

  • Guillemets simples.
  • Trailing commas.
  • Commentaires dans JSON standard.
  • Précision nombres.
  • Dates indéfinies.
  • Shapes inconsistantes.
  • HTML escaping dans JSON.
  • Injection JSON.

Variantes de JSON

VarianteAjouteCas d'usage
JSON5Commentaires, trailing commasConfig files
JSONCCommentairesVS Code settings
NDJSONRecords newline-delimitedLog streaming
JSON-LDSémantique linked-dataSEO structured data
GeoJSONShapes géographiquesCartes, GIS
JSON PatchFormat diffAPI partial updates

FAQ : JSON

Pourquoi JSON sur XML ?

Plus petit, syntaxe plus simple, parsing natif JS.

JSON peut-il avoir des commentaires ?

JSON standard : non. JSON5/JSONC : oui.

Comment envoyer des dates en JSON ?

Strings ISO 8601.

Qu'en est-il des grands nombres ?

Au-dessus de JS Safe Integer sérialiser comme string.

JSON est-il sûr à parser depuis sources non fiables ?

JSON.parse est sûr ; mais valider shape via schema.

Différence entre JSON et JS objects ?

JSON est format texte. JS objects sont données runtime.

Comment pretty-print JSON ?

JSON.stringify(obj, null, 2) ; jq ..

Testez les APIs JSON à scale avec LoadFocus

LoadFocus exécute des scripts JMeter et k6 qui hittent les APIs JSON depuis 25+ régions. Inscrivez-vous sur loadfocus.com/signup.

Quelle est la vitesse de votre site web?

Augmentez sa vitesse et son référencement naturel de manière transparente avec notre Test de Vitesse gratuit.

Test gratuit de vitesse du site Web

Analyser la vitesse de chargement de votre site Web et améliorer ses performances avec notre outil gratuit de vérification de la vitesse de la page.

×