JSON-zu-JavaScript-Objekt-Konverter
Striktes JSON lässt sich mit JSON.parse in ein JavaScript-Objekt umwandeln. JavaScript-Objektliterale müssen erst bereinigt werden, bevor sie gültiges JSON sind.
JSON in JavaScript konvertieren
Wenn die Eingabe bereits gültiges JSON ist, ist JSON.parse(jsonText) der sicherste Konverter. Er liefert ein gewöhnliches JavaScript-Objekt, Array, einen String, eine Zahl, einen Boolean oder null zurück, ohne Code auszuführen.
JSON-Eingabe
{ "name": "Ada", "active": true, "skills": ["math", "notes"] }
Verwendung in JavaScript
const user = JSON.parse(jsonText); console.log(user.name);
Objektliteral als Eingabe ist anders
Ein JavaScript-Objektliteral wie { name: 'Ada', active: true } ist kein JSON. Vor JSON.parse müssen fehlende Anführungszeichen an Schlüsseln, einfache Anführungszeichen, Kommentare und Trailing Commas behoben werden.
Wann eval zu vermeiden ist
Verwende eval nicht, um unbekannten Text in ein Objekt zu verwandeln. eval führt Code aus, JSON.parse parst nur Daten — deshalb ist striktes JSON für API-Payloads, Konfiguration, Logs und eingefügte Beispiele sicherer.
Randfälle: Daten, undefined und Funktionen
JSON kennt keinen Date-, undefined- oder Funktionstyp. Daten reisen als ISO-Strings, undefined-Werte werden beim Stringify entfernt und Funktionen lassen sich gar nicht abbilden. Enthält ein JavaScript-Objekt solche Werte, ist das resultierende JSON eine verlustbehaftete Momentaufnahme — stelle Typen mit einer reviver-Funktion in JSON.parse explizit wieder her.
TypeScript und inferierte Typen
JSON.parse liefert 'any', weil der Parser die Form nicht vorher kennen kann. Für typisierten Zugriff entweder einen Return-Type deklarieren (JSON.parse(text) as User), nach Validierung mit einer Schema-Library wie zod oder io-ts, oder ein Interface aus einem Sample mit dem JSON-zu-TypeScript-Tool generieren.
Die andere Richtung: Objekt zu JSON
JSON.stringify(value, null, 2) erzeugt formatiertes JSON aus einem JavaScript-Wert. undefined, Funktionen und Symbol-Keys werden stillschweigend entfernt; zirkuläre Referenzen werfen eine Exception. Ein replacer als zweites Argument steuert, welche Felder erhalten bleiben — nützlich, um Interna vor dem Senden eines Objekts über die Leitung zu entfernen.
JSON-Reparatur-Anleitungen
Themen-Hubs
- 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
Konkrete Anleitungen
- Base64-Strings dekodieren (und JWT-Payloads)
- URL-Kodierung: Query-Parameter und Pfade prozentkodieren
- YAML zu JSON konvertieren (und Einrückungsfehler vermeiden)
- JSON zu CSV konvertieren: ein Array von Objekten abflachen
- JSON zu XML konvertieren: Wurzel, Attribute und Arrays
- JSON als String-Literal escapen (und doppelt kodiertes JSON dekodieren)
- Nachgestellte Kommas in JSON beheben
- Einfache Anführungszeichen in JSON beheben
- Unanführte Schlüssel in JSON beheben
- LLM-JSON-Ausgabe reparieren
- JSON-Parse-Fehler «Expected Property Name» beheben
- JSON vs. JavaScript-Objektliteral
- JSON vor API-Anfragen validieren
- JSON-Formatter vs. JSON Repair
- JSON-Fehler «Unexpected Token» beheben