JSON Toolkit

JSON oder YAML

Fazit: JSON trennt mit Klammern, YAML mit Einrückung: Maschinen bekommen JSON, Menschen, die Konfiguration bearbeiten, bekommen YAML. Kommentare, Anker und Mehrdokumentstruktur überleben nicht.

Einsteiger~4 Min. LesezeitVeröffentlicht 2026-10-30Aktualisiert 2026-10-30
Wann man JSON und wann man YAML verwendet

Kurz gesagt: Verwenden Sie JSON für Maschine-zu-Maschine-Daten und YAML für Konfiguration, die Menschen bearbeiten; bevorzugen Sie YAML, wenn Sie Kommentare, mehrzeiligen Text oder Anker brauchen, und JSON, wenn jede Sprache dieselbe Payload ohne Mehrdeutigkeit parsen muss.

Seite an Seite

{
  "server": {
    "host": "127.0.0.1",
    "port": 8080
  }
}
server:
  host: 127.0.0.1
  port: 8080

Dieselbe Struktur. YAML lässt die Satzzeichen weg und gewinnt einen Platz für einen Kommentar.

Worin sie sich unterscheiden

JSON YAML
Struktur Klammern und Kommas Einrückung
Kommentare Keine Ja
Strings Doppelte Anführungszeichen, Escaping erforderlich Meist nackt
Mehrzeiliger Text \n-Escapes oder Arrays `
Wiederverwendung Keine Anker & und Aliase *
Mehrere Dokumente In ein Array verpacken ----Trenner
Parse-Geschwindigkeit Schnell Langsamer, Einrückungsregeln
Mehrdeutigkeit Sehr niedrig no als Boolean geparst, Einrückung um eins daneben

Die letzte Zeile sind YAMLs echte Kosten. In YAML 1.1 ergibt country: NO den Boolean false, und version: 1.0 kann zu einem Float werden. JSON hat überhaupt keine implizite Typisierung.

Auswahl

JSON: Request- und Response-Bodies, Dienst-zu-Dienst-Nachrichten, JSON-Spalten in Datenbanken, alles, was in jeder Sprache identisch parsen muss.

YAML: Ökosysteme, in denen es der Standard ist (Kubernetes, Ansible, GitHub Actions, Docker Compose); Konfiguration, die Erklärung braucht; Dateien, die von langem Text dominiert werden, etwa Zertifikate, Skripte oder SQL.

Was die Konvertierung verliert

YAML → JSON: alle Kommentare, Ankerwiederverwendung (zu Duplikaten expandiert), alle Dokumente außer dem ersten und die ursprüngliche Schreibweise von Daten und Booleans.

JSON → YAML: die String/Zahl-Unterscheidung schwächt sich ab, "8080" und 8080 brauchen also beide ausdrückliches Quoting, um sicher zu bleiben.

Konvertieren Sie für Migrationen und einmalige Inspektion. Pflegen Sie nicht dieselbe Datei in zwei Formaten als parallele Ansichten.

FAQ

Wie soll ich zwischen JSON und YAML entscheiden?

Beginnen Sie damit, wer die Datei liest und pflegt: Verwenden Sie JSON, wenn ein Programm sie erzeugt, sie Sprachgrenzen überschreitet und vorhersehbar parsen muss; verwenden Sie YAML, wenn ein Mensch sie bearbeitet und Felderklärungen oder langen mehrzeiligen Text braucht. Sie konvertieren ineinander, aber pflegen Sie dieselbe Konfiguration nicht langfristig in beiden Formaten.

Warum erzeugt YAML mehr Typmehrdeutigkeit?

YAML hat implizite Typisierung, Werte wie NO, on oder 1.0 können also zu Booleans, Daten oder Zahlen werden. JSON hat nur ausdrückliche Typen: Ein String muss quotiert sein, was das Parsen sprachübergreifend vorhersehbarer macht.

Sollten Kommentare und Anker bei der Konvertierung von YAML nach JSON überleben?

Nein. YAML-Kommentare, Anker und mehrere Dokumente lassen sich in JSON nicht darstellen; Anker werden zu dupliziertem Inhalt expandiert. Müssen Sie sie bewahren, verwenden Sie eine YAML-Bibliothek mit Document-API statt eines Objekt-Roundtrips.

Weiterführende Literatur