Convertisseur JSON vers objet JavaScript
Du JSON strict peut être converti en objet JavaScript avec JSON.parse. Les littéraux d’objet JavaScript nécessitent un nettoyage avant d’être du JSON valide.
Convertir du JSON en JavaScript
Si l’entrée est déjà du JSON valide, le convertisseur le plus sûr est JSON.parse(jsonText). Il renvoie un objet, tableau, chaîne, nombre, booléen ou null JavaScript, sans exécuter de code.
Entrée JSON
{ "name": "Ada", "active": true, "skills": ["math", "notes"] }
Utilisation en JavaScript
const user = JSON.parse(jsonText); console.log(user.name);
L’entrée littéral d’objet n’est pas du JSON
Un littéral d’objet JavaScript comme { name: 'Ada', active: true } n’est pas du JSON. Avant de le passer à JSON.parse, réparez les clés sans guillemets, convertissez les guillemets simples en doubles, supprimez les commentaires et retirez les virgules finales.
Quand éviter eval
N’utilisez pas eval pour transformer du texte inconnu en objet. eval exécute du code. JSON.parse, lui, ne fait que parser des données — c’est pourquoi le JSON strict est plus sûr pour les payloads d’API, la configuration, les logs et les exemples collés.
Cas limites : dates, undefined et fonctions
JSON n’a pas de type Date, undefined ou fonction. Les dates voyagent comme des chaînes ISO, les undefined disparaissent au stringify, et les fonctions ne peuvent pas être représentées du tout. Si un objet JavaScript en contient, le JSON résultant sera une capture avec perte — restaurez les types explicitement avec une fonction reviver dans JSON.parse.
TypeScript et types inférés
JSON.parse renvoie 'any' parce que le parser ne peut pas connaître la forme à l’avance. Pour un accès typé, soit déclarez un type de retour (JSON.parse(text) as User) après validation avec une bibliothèque de schémas comme zod ou io-ts, soit générez une interface depuis un exemple via l’outil JSON to TypeScript.
Sens inverse : objet vers JSON
JSON.stringify(value, null, 2) produit du JSON formaté à partir d’une valeur JavaScript. Il jette en silence undefined, les fonctions et les clés Symbol ; les références circulaires lèvent une erreur. Passez une fonction replacer en deuxième argument pour contrôler les champs qui survivent — utile pour retirer les internes avant d’envoyer un objet sur le réseau.
Guides de réparation JSON
Pôles thématiques
- JSON Parse Errors: Read the Message, Jump to the Fix
- Fix Invalid JSON: From 'What's Wrong' to a Clean File
- JSON Formatter, Validator, Viewer: Pick the Right Tool
- Repair LLM JSON Output: Handling Almost-JSON from AI
- Privacy: JSON Tools That Don't Leave Your Browser
- JSON Interop: YAML, CSV, XML, JWT, Schema
Guides spécifiques
- Comment décoder des chaînes Base64 (et des payloads JWT)
- Encodage URL : encodez les paramètres de requête et les chemins
- Convertir YAML en JSON (et éviter les erreurs d’indentation)
- Convertir JSON en CSV : aplatir un tableau d’objets
- Convertir JSON en XML : racine, attributs et tableaux
- Échapper du JSON comme littéral de chaîne (et décoder du JSON doublement encodé)
- Corriger les virgules finales en JSON
- Corriger les guillemets simples en JSON
- Corriger les clés sans guillemets en JSON
- Réparer le JSON produit par un LLM
- Corriger l’erreur de parse JSON : Expected Property Name
- JSON vs littéral d’objet JavaScript
- Validez le JSON avant les requêtes API
- Formateur JSON vs JSON Repair
- Corriger les erreurs JSON Unexpected Token