JSON: Das Datenformat des Webs | Enjyn Gruppe
Hallo Welt
Hallo Welt
Original Lingva Deutsch
Übersetzung wird vorbereitet...
Dieser Vorgang kann bis zu 60 Sekunden dauern.
Diese Seite wird erstmalig übersetzt und dann für alle Besucher gespeichert.
0%
DE Zurück zu Deutsch
Übersetzung durch Lingva Translate

235 Dokumentationen verfügbar

Wissensdatenbank

JSON Format Verarbeitung

Zuletzt aktualisiert: 20.01.2026 um 10:03 Uhr

JSON: Das Datenformat des Webs

JSON (JavaScript Object Notation) ist das Standard-Format für Datenaustausch. Einfach zu lesen, leicht zu parsen – ideal für APIs und Konfigurationsdateien.

Was ist JSON?

JSON ist ein textbasiertes Datenformat, das von JavaScript abgeleitet wurde, aber sprachunabhängig ist. Es ist leichter als XML und menschen-lesbar.

JSON Syntax

Datentypen

{
  "string": "Hallo Welt",
  "number": 42,
  "float": 3.14,
  "boolean": true,
  "null": null,
  "array": [1, 2, 3],
  "object": {
    "key": "value"
  }
}

Regeln

  • Keys müssen Strings in doppelten Anführungszeichen sein
  • Strings nur mit doppelten Anführungszeichen
  • Keine Trailing Commas erlaubt
  • Keine Kommentare (Standard-JSON)
  • Keine undefined oder Funktionen

Gültiges vs. Ungültiges JSON

// ✅ Gültig
{
  "name": "Max",
  "age": 30
}

// ❌ Ungültig - Single Quotes
{
  'name': 'Max'
}

// ❌ Ungültig - Trailing Comma
{
  "name": "Max",
}

// ❌ Ungültig - Unquoted Key
{
  name: "Max"
}

JSON in JavaScript

Parsen (String → Objekt)

const jsonString = '{"name": "Max", "age": 30}';

// Parsen
const obj = JSON.parse(jsonString);
console.log(obj.name);  // "Max"

// Mit Reviver-Funktion
const data = JSON.parse(jsonString, (key, value) => {
  if (key === 'age') return value + 1;
  return value;
});

Stringifizieren (Objekt → String)

const obj = { name: "Max", age: 30 };

// Einfach
const json = JSON.stringify(obj);
// '{"name":"Max","age":30}'

// Formatiert (Pretty Print)
const pretty = JSON.stringify(obj, null, 2);
/*
{
  "name": "Max",
  "age": 30
}
*/

// Mit Replacer (Felder filtern)
const filtered = JSON.stringify(obj, ['name']);
// '{"name":"Max"}'

Deep Clone mit JSON

const original = { a: 1, b: { c: 2 } };
const clone = JSON.parse(JSON.stringify(original));

JSON in Python

import json

# String → Dictionary
json_string = '{"name": "Max", "age": 30}'
data = json.loads(json_string)
print(data['name'])  # Max

# Dictionary → String
obj = {"name": "Max", "age": 30}
json_str = json.dumps(obj)

# Formatiert
pretty = json.dumps(obj, indent=2)

# Datei lesen
with open('data.json', 'r') as f:
    data = json.load(f)

# Datei schreiben
with open('data.json', 'w') as f:
    json.dump(obj, f, indent=2)

JSON in PHP

<?php
// String → Array
$json_string = '{"name": "Max", "age": 30}';
$data = json_decode($json_string, true);  // true = assoc array
echo $data['name'];  // Max

// Als Objekt
$obj = json_decode($json_string);
echo $obj->name;  // Max

// Array → String
$arr = ['name' => 'Max', 'age' => 30];
$json = json_encode($arr);

// Formatiert
$pretty = json_encode($arr, JSON_PRETTY_PRINT);

// Fehlerbehandlung
$data = json_decode($invalid_json);
if (json_last_error() !== JSON_ERROR_NONE) {
    echo json_last_error_msg();
}

JSON Schema

JSON Schema definiert die Struktur von JSON-Daten:

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1
    },
    "age": {
      "type": "integer",
      "minimum": 0
    },
    "email": {
      "type": "string",
      "format": "email"
    }
  },
  "required": ["name", "email"]
}

JSON vs. Alternativen

Format Vorteile Nachteile
JSON Einfach, weit verbreitet, lesbar Keine Kommentare, verbose
YAML Lesbar, Kommentare, kompakt Komplexere Syntax, langsamer
XML Schemas, Namespaces Verbose, komplexer zu parsen
TOML Für Config-Dateien, lesbar Weniger verbreitet

Best Practices

💡 Tipps:
  • Immer UTF-8 Encoding verwenden
  • Datumsangaben als ISO 8601 String
  • camelCase oder snake_case konsistent
  • JSON validieren vor dem Parsen
  • Große Zahlen als String (JavaScript-Limit)

JSON5 und JSONC

Erweiterungen für mehr Komfort:

// JSON5 - erlaubt:
{
  // Kommentare
  name: 'Max',        // Unquoted keys, single quotes
  age: 30,            // Trailing comma
}

// JSONC (JSON with Comments) - für VS Code settings
{
  // Dies ist ein Kommentar
  "editor.fontSize": 14
}

Nützliche Tools

  • JSONLint: Online-Validator
  • jq: Command-Line JSON-Prozessor
  • JSON Formatter: Browser-Extensions

Weitere Informationen

Enjix Beta

Enjyn AI Agent

Hallo 👋 Ich bin Enjix — wie kann ich dir helfen?
120