{"name":"Anna","alter":25,"aktiv":true}
JSON (JavaScript Object Notation)
JSON ist ein Textformat zum Speichern und Austauschen von Daten. Es sieht JavaScript-Objekten sehr ähnlich, ist aber ein reiner Datentext – kein ausführbarer Code.
JSON wird überall im Web genutzt: APIs, Konfigurationsdateien und Datenspeicherung. Die Grundlagen zu Objekten kennst du bereits aus dem Kapitel Objekte.
Was ist JSON?
JSON steht für JavaScript Object Notation. Der Name kommt daher, dass die Schreibweise an JavaScript-Objekte erinnert – JSON ist aber ein eigenes Format, das viele Programmiersprachen verstehen.
Ein JSON-Text besteht aus Schlüssel-Wert-Paaren, Arrays, Strings, Zahlen und booleschen Werten (true / false).
JSON-Syntax
JSON sieht fast wie ein JavaScript-Objekt aus – aber es gibt wichtige Unterschiede:
| Regel | JSON | JavaScript-Objekt |
|---|---|---|
| Schlüssel | Immer in Anführungszeichen: "name" | Oft ohne: name |
| Strings | Nur doppelte Anführungszeichen | Einzel- oder doppelte Anführungszeichen |
| Funktionen | Nicht erlaubt | Erlaubt |
JSON-Beispiel
1{
2 "name": "Anna",
3 "alter": 25,
4 "aktiv": true,
5 "hobbies": ["Lesen", "Sport"]
6}JSON.stringify()
Mit JSON.stringify() wandelst du ein JavaScript-Objekt in einen JSON-String um – zum Beispiel, um Daten zu speichern oder an einen Server zu senden.
Objekt in JSON umwandeln
1const person = {
2 name: "Anna",
3 alter: 25,
4 aktiv: true
5};
6
7const jsonString = JSON.stringify(person);
8console.log(jsonString);Output
JSON.parse()
Mit JSON.parse() machst du das Gegenteil: Aus einem JSON-String wird wieder ein JavaScript-Objekt, mit dem du im Code weiterarbeiten kannst.
JSON in Objekt umwandeln
1const jsonString = '{"name":"Anna","alter":25,"aktiv":true}';
2
3const person = JSON.parse(jsonString);
4
5console.log(person.name);
6console.log(person.alter);Output
Anna
25
Wofür wird JSON verwendet?
- APIs: Server senden Daten als JSON an den Browser
- Datenspeicherung: z. B. Einstellungen im Browser (
localStorage) - Konfigurationsdateien: Einstellungen in Apps und Webprojekten
- Datenaustausch: zwischen Frontend, Backend und anderen Systemen
Kurz gesagt: JSON.stringify() macht aus Objekten Text, JSON.parse() macht aus Text wieder Objekte.
Im nächsten Kapitel lernst du: LocalStorage