Travailler avec JSON en JavaScript : analyse et sérialisation pour débutants

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Introduction : qu'est-ce que JSON et pourquoi en a-t-on besoin en JavaScript ?



JSON (JavaScript Object Notation) est un format textuel léger d'échange de données, basé sur la syntaxe des objets JavaScript. Malgré son nom, JSON est indépendant du langage et est supporté par pratiquement tous les langages de programmation modernes. Dans l'écosystème Node.js et du JavaScript navigateur, travailler avec JSON est l'une des opérations les plus courantes : de la récupération de données depuis une API à la sauvegarde de configurations et au transfert d'informations entre le serveur et le client.



Dans cet article, nous allons analyser deux méthodes clés : JSON.parse() (conversion d'une chaîne JSON en objet JavaScript) et JSON.stringify() (conversion d'un objet JavaScript en chaîne JSON). Vous apprendrez à gérer correctement les erreurs, à travailler avec des structures imbriquées et à utiliser les fonctionnalités avancées de ces méthodes.



1. Analyse JSON : la méthode JSON.parse()



La méthode JSON.parse() prend une chaîne au format JSON et la convertit en un objet, un tableau ou une valeur primitive JavaScript. C'est l'opération principale lorsque vous recevez des données d'une source externe — par exemple, d'une API REST ou d'un fichier.



Syntaxe de base



const jsonString = '{"name": "Anna", "age": 30, "isStudent": false}';const user = JSON.parse(jsonString);

console.log(user.name); // "Anna"console.log(user.age); // 30console.log(user.isStudent); // false


Notez : les clés et les valeurs de chaînes en JSON doivent être entourées de guillemets doubles. Les guillemets simples ou l'absence de guillemets pour les clés entraîneront une erreur.



Analyse de tableaux



JSON peut contenir non seulement des objets, mais aussi des tableaux :



const jsonArray = '[1, 2, 3, "quatre", true]';const arr = JSON.parse(jsonArray);

console.log(arr[0]); // 1console.log(arr[3]); // "quatre"


Structures imbriquées



JSON prend en charge une imbrication illimitée :



const complexJson = '{"users":[{"id":1,"name":"Ivan"},{"id":2,"name":"Maria"}]}';const data = JSON.parse(complexJson);

console.log(data.users[0].name); // "Ivan"console.log(data.users[1].id); // 2


Gestion des erreurs d'analyse



Si la chaîne contient un JSON invalide, JSON.parse() lèvera une exception SyntaxError. Utilisez toujours try/catch lorsque vous travaillez avec des données externes :



const invalidJson = '{"name": "Pierre", age: 25}'; // Erreur : age sans guillemets

try { const obj = JSON.parse(invalidJson); console.log(obj);} catch (error) { console.error('Erreur d\'analyse JSON :', error.message); // Affiche : Erreur d'analyse JSON : Unexpected token 'a', ...}


Utilisation avancée : la fonction reviver



Le deuxième paramètre de JSON.parse() est une fonction reviver qui permet de transformer les valeurs pendant l'analyse. Par exemple, on peut automatiquement convertir les chaînes de dates en objets Date :



const jsonWithDate = '{"name": "Événement", "date": "2025-03-15T10:00:00.000Z"}';

const event = JSON.parse(jsonWithDate, (key, value) => { if (key === 'date') { return new Date(value); } return value;});

console.log(event.date instanceof Date); // trueconsole.log(event.date.getFullYear()); // 2025


2. Sérialisation JSON : la méthode JSON.stringify()



La méthode JSON.stringify() effectue l'opération inverse — convertit un objet ou une valeur JavaScript en une chaîne JSON. Cela est nécessaire pour envoyer des données au serveur, les sauvegarder dans un fichier ou les journaliser.



Syntaxe de base



const user = {    name: "Olga",    age: 28,    isAdmin: true,    skills: ["JS", "Python", "SQL"]};

const jsonString = JSON.stringify(user);console.log(jsonString);// {"name":"Olga

Blogs

Book Recommendations