📋
← Zurück zu Anleitungen

Was ist JSON? Ein vollständiger Leitfaden für Einsteiger

· Tags: json, what-is-json, json-syntax, json-data-types, web-development

Was ist JSON?

JSON (JavaScript Object Notation) ist ein leichtgewichtiges, textbasiertes Datenaustauschformat, das so konzipiert ist, dass es für Menschen leicht zu lesen und zu schreiben und für Maschinen leicht zu parsen und zu erzeugen ist. Es wurde ursprünglich von der Objektliteral-Syntax von JavaScript abgeleitet, ist aber inzwischen ein sprachunabhängiger Standard, der von praktisch jeder Programmiersprache unterstützt wird.

Heute ist JSON das dominierende Format für den Datenaustausch im Web. Es treibt REST-APIs, Konfigurationsdateien, NoSQL-Datenbanken, die Kommunikation mobiler Apps und unzählige andere datengetriebene Systeme an. Seine Einfachheit und Allgegenwärtigkeit haben es zur Standardwahl für Entwickler weltweit gemacht.

JSON-Syntaxregeln

JSON folgt einem strengen und minimalen Satz an Syntaxregeln:

  • Daten sind in Schlüssel/Wert-Paaren strukturiert
  • Alle Schlüssel müssen Strings in doppelten Anführungszeichen sein (einfache Anführungszeichen sind nicht erlaubt)
  • Schlüssel/Wert-Paare werden durch einen Doppelpunkt (:) getrennt
  • Paare werden durch Kommas (,) getrennt
  • Geschweifte Klammern {} umschließen Objekte
  • Eckige Klammern [] umschließen Arrays
  • Nachgestellte Kommas sind nicht zulässig
  • Kommentare sind in striktem JSON nicht erlaubt

Gültiges JSON-Beispiel

{
  "name": "Jane Smith",
  "age": 28,
  "isEmployed": true,
  "skills": ["JavaScript", "Python", "SQL"],
  "address": {
    "street": "123 Main Street",
    "city": "San Francisco",
    "zipCode": "94102"
  },
  "phoneNumbers": null
}

Ungültige JSON-Beispiele

Nachgestelltes Komma (ungültig):

{
  "name": "Jane",
  "age": 28,
}

Schlüssel mit einfachen Anführungszeichen (ungültig):

{ 'name': 'Jane' }

Fehlende Anführungszeichen beim Schlüssel (ungültig):

{ name: "Jane" }

JSON-Datentypen

JSON unterstützt genau sechs Datentypen:

| Typ | Beschreibung | Beispiel | |------|-------------|---------| | String | Unicode-Text in doppelten Anführungszeichen | "Hello, world!" | | Number | Ganzzahl oder Gleitkommazahl | 42, 3.14, -7, 1.5e10 | | Boolean | Logisch wahr oder falsch | true, false | | Null | Bewusst leerer Wert | null | | Objekt | Ungeordnete Schlüssel/Wert-Sammlung | {"key": "value"} | | Array | Geordnete Liste von Werten | [1, 2, 3] |

Auffällig abwesend: Datumsangaben, Zeitstempel, Binärdaten, undefined und Funktionen haben keine native JSON-Darstellung. Datumsangaben werden konventionsgemäß in der Regel als ISO-8601-Strings gespeichert.

JSON im Vergleich zu anderen Datenformaten

JSON steht neben mehreren anderen Datenaustauschformaten, jedes mit seinen Abwägungen:

  • JSON vs. XML: JSON ist kompakter und schneller zu parsen. XML unterstützt Attribute, Namespaces und Schemas (XSD), ist aber deutlich ausführlicher.
  • JSON vs. YAML: YAML ist für Konfigurationsdateien besser lesbar und unterstützt Kommentare, aber seine einrückungssensitive Syntax kann fehleranfällig sein. JSON ist portabler und hat eine strengere Validierung.
  • JSON vs. CSV: CSV ist nur flach und tabellarisch. JSON unterstützt verschachtelte Hierarchien und gemischte Datentypen.
  • JSON vs. Protocol Buffers: Protobuf ist kleiner und schneller für die Maschine-zu-Maschine-Kommunikation, erfordert jedoch eine Schema-Definition und ist nicht für Menschen lesbar.

Warum JSON Web-APIs dominiert

Mehrere Faktoren erklären die Dominanz von JSON im Web-API-Design:

  1. Sprachliche Allgegenwärtigkeit -- Jede große Sprache hat einen nativen oder gut gepflegten JSON-Parser, was Integrationsreibung beseitigt.
  2. Native Browser-Unterstützung -- JSON.parse() und JSON.stringify() von JavaScript machen JSON zur natürlichen Wahl für Webanwendungen.
  3. Minimaler Bandbreitenverbrauch -- Die schlanke Syntax von JSON erzeugt kleinere Payloads als XML und reduziert so Latenz- und Bandbreitenkosten.
  4. Lesbarkeit für Menschen -- Entwickler können JSON-Daten ohne spezielle Werkzeuge inspizieren, debuggen und von Hand schreiben.
  5. Flexibles Schema -- Im Gegensatz zu starren Formaten wie XML Schema oder Protocol Buffers passt sich JSON an sich weiterentwickelnde Datenstrukturen an, ohne neu kompilieren zu müssen.

Häufige JSON-Anwendungsfälle

  • REST- und GraphQL-APIs -- Das Standardformat für Anforderungs- und Antwort-Payloads.
  • Konfigurationsdateien -- Wird von Tools wie ESLint, Prettier, webpack und VS Code verwendet.
  • NoSQL-Datenbanken -- MongoDB und CouchDB speichern Daten als JSON-ähnliche Dokumente.
  • Datenserialisierung -- Strukturierung von Daten für Speicherung, Übertragung oder Caching.
  • Echtzeitkommunikation -- JSON-Nachrichten in WebSocket-Streams und Webhooks.
  • Log-Aggregation -- Strukturierte Logging-Tools wie Winston, Logstash und Datadog verwenden JSON für durchsuchbare, filterbare Log-Einträge.

JSON-Validierung und -Formatierung

Bei der Arbeit mit JSON ist die Validierung entscheidend. Ein einziger Syntaxfehler -- ein nachgestelltes Komma, ein fehlendes Anführungszeichen oder ein nicht maskiertes Zeichen -- kann eine gesamte API-Integration oder Konfigurationsdatei zerstören. Die manuelle Prüfung ist unzuverlässig, insbesondere bei großen JSON-Dokumenten.

So validieren Sie JSON

Die Validierung folgt typischerweise diesen Schritten:

  1. Parsen Sie den JSON-String mit einem Standard-Parser wie JSON.parse() in JavaScript oder dem Äquivalent in Ihrer bevorzugten Sprache.
  2. Prüfen Sie auf Syntaxfehler -- der Parser wirft beim ersten Verstoß einen Fehler mit einer Meldung, die die Stelle des Problems angibt.
  3. Beheben Sie Fehler iterativ -- da Parser beim ersten Fehler stoppen, beheben Sie ihn und validieren Sie erneut, bis das Dokument fehlerfrei ist.

Die meisten Online-JSON-Tools kombinieren Validierung mit Formatierung. Fügen Sie Ihr JSON ein, und das Tool prüft sofort die Syntax, hebt Fehler mit Zeilen- und Spaltennummern hervor und erzeugt saubere, eingerückte Ausgabe. Das ist erheblich schneller als das Debuggen mit Parser-Exceptions in Ihrem Code.

Tipps für die Arbeit mit JSON

  • Immer vor der Verwendung validieren -- Gehen Sie niemals davon aus, dass handgeschriebenes JSON gültig ist.
  • Einen Linter verwenden -- Tools wie ESLint mit JSON-Plugins erkennen Fehler, bevor sie die Produktion erreichen.
  • JSON-Bibliotheken bevorzugen -- Erzeugen Sie JSON mit Serialisierungsbibliotheken statt mit String-Verkettung, um subtile Syntaxfehler zu vermeiden.
  • Strikte Content-Type-Header setzen -- Erzwingen Sie für APIs Content-Type: application/json, um fehlerhafte Anforderungen früh abzulehnen.

Verwenden Sie einen kostenlosen Online-JSON-Validator und -Formatter , um Ihre JSON-Syntax sofort zu prüfen, Fehler zu lokalisieren und Ihre Daten für die Lesbarkeit zu formatieren. Ob Sie als Einsteiger die Grundlagen lernen oder als erfahrener Entwickler eine Produktions-API debuggen -- unser JSON-Formatter-&-Validator -Tool hilft Ihnen, effizient mit JSON-Daten zu arbeiten.