Skip to main content
CheckTown
Konverter

JSON5-zu-JSON-Converter: Konfigurationsdateien leicht bereinigen

Veröffentlicht 5 Min. Lesezeit
In diesem Artikel

Was ist JSON5?

JSON5 ist eine Obermenge von JSON, die von der ECMAScript-5.1-Syntax inspirierte Funktionen hinzufügt. Es wurde entwickelt, um JSON für Konfigurationsdateien und andere Fälle, in denen Menschen JSON von Hand schreiben und lesen, menschenfreundlicher zu machen. Jedes gültige JSON-Dokument ist auch gültiges JSON5, aber JSON5 ergänzt Kommentare, nachgestellte Kommas, Schlüssel ohne Anführungszeichen und weitere Erleichterungen.

Die JSON5-Spezifikation wurde 2018 finalisiert und ist im JavaScript-Tooling weit verbreitet. Build-Tools wie Babel, Next.js und Webpack akzeptieren JSON5-Konfigurationsdateien. Die Umwandlung von JSON5 in Standard-JSON ist erforderlich, wenn du mit Systemen zusammenarbeitest, die nur striktes JSON verstehen, etwa APIs, Datenbanken und die meisten Programmiersprachen.

JSON5-Funktionen erklärt

JSON5 fügt mehrere Syntaxerweiterungen hinzu, die das Schreiben und Pflegen von Konfigurationsdateien erleichtern.

  • Kommentare — sowohl einzeilige (//) als auch mehrzeilige (/* */) Kommentare sind erlaubt, wodurch Konfigurationsdateien selbstdokumentierend werden
  • Nachgestellte Kommas — Arrays und Objekte dürfen nach dem letzten Element ein Komma haben, was das Diff-Rauschen beim Hinzufügen oder Entfernen von Einträgen reduziert
  • Schlüssel ohne Anführungszeichen — Objektschlüssel, die gültige ECMAScript-Bezeichner sind, benötigen keine Anführungszeichen, was Konfigurationen kompakter macht
  • Hexadezimalzahlen — numerische Werte können als 0xFF geschrieben werden, nützlich für Farbcodes und Bitmasken in Konfigurationen
  • Mehrzeilige Strings — String-Werte können sich mit Backslash-Fortsetzung über mehrere Zeilen erstrecken, hilfreich für lange Beschreibungen oder Pfade
  • Spezielle numerische Werte — Infinity, -Infinity und NaN sind in JSON5 gültige numerische Literale

Kostenlos testen – keine Registrierung erforderlich

JSON5 zu JSON konvertieren →

Wo JSON5 verwendet wird

JSON5 wird vor allem im Tooling des JavaScript-Ökosystems verwendet, wo Konfigurationsdateien von Entwicklern geschrieben und gepflegt werden.

  • Babel — .babelrc- und babel.config.json5-Dateien unterstützen JSON5-Syntax für Build-Konfigurationen mit Kommentaren
  • TypeScript — tsconfig.json unterstützt JSON5-Funktionen wie Kommentare und nachgestellte Kommas (technisch gesehen JSONC)
  • Chrome DevTools — Profile zur Netzwerkdrosselung und andere Einstellungen verwenden das JSON5-Format
  • Next.js — Konfigurationsdateien akzeptieren JSON5 für eine entwicklerfreundliche Einrichtung mit Inline-Dokumentation

Häufig gestellte Fragen

Können Browser JSON5 nativ parsen?

Nein. Browser unterstützen über JSON.parse() nur Standard-JSON. Um JSON5 in einer Browser- oder Node.js-Anwendung zu parsen, benötigst du das npm-Paket json5. Build-Tools, die JSON5 unterstützen, übernehmen das Parsen intern während ihres Build-Schritts.

Was ist der Unterschied zwischen JSON5 und JSONC?

JSONC (JSON with Comments) fügt JSON lediglich Unterstützung für Kommentare hinzu. JSON5 ist eine umfassendere Obermenge, die Kommentare, nachgestellte Kommas, Schlüssel ohne Anführungszeichen, Hex-Zahlen, mehrzeilige Strings und spezielle numerische Werte hinzufügt. Die tsconfig.json von TypeScript und die settings.json von VS Code verwenden JSONC, während Babel und andere Tools vollständiges JSON5 nutzen.

Ist JSON5 dasselbe wie YAML?

Nein. JSON5 bleibt der JSON-Syntax mit kleinen ergonomischen Ergänzungen sehr nahe. YAML ist ein völlig anderes Format mit einer auf Einrückung basierenden Struktur, Ankern und vielen weiteren Funktionen. JSON5 lässt sich einfacher in JSON umwandeln, weil es eine strikte Obermenge ist. Die Umwandlung von YAML in JSON kann verlustbehaftet sein, da YAML Datentypen unterstützt, die JSON nicht kennt.

Verwandte Tools