JSON (JavaScript Object Notation) ist ein leichtgewichtiges Datenformat, das häufig in Webanwendungen verwendet wird, um Daten zwischen Servern und Clients zu übertragen. Rohdaten im JSON-Format, insbesondere komplexe Objekte, können schwer lesbar sein. Glücklicherweise bietet JavaScript integrierte Methoden zur Verbesserung der Lesbarkeit und Verwaltung von JSON.
Inhaltsverzeichnis
- Formatieren von JSON-Objekten mit
JSON.stringify()
- Neuformatieren von JSON-Strings mit
JSON.stringify()
undJSON.parse()
Formatieren von JSON-Objekten mit JSON.stringify()
Die Methode JSON.stringify()
ist das Hauptwerkzeug zum Konvertieren von JavaScript-Objekten in JSON-Strings. Obwohl standardmäßig eine kompakte Ausgabe erfolgt, steuert der optionale Parameter space
die Formatierung. Dieser Parameter gibt die Einrückungsstufe an.
Betrachten Sie dieses JavaScript-Objekt:
const myDataObject = {
name: "John Doe",
age: 30,
address: {
street: "123 Main St",
city: "Anytown",
zip: "12345"
},
skills: ["JavaScript", "HTML", "CSS"]
};
Um dies in einen lesbaren JSON-String zu formatieren, verwenden Sie JSON.stringify()
mit dem Parameter space
:
const formattedJson = JSON.stringify(myDataObject, null, 2); // 2 Leerzeichen für Einrückung
console.log(formattedJson);
Dies erzeugt:
{
"name": "John Doe",
"age": 30,
"address": {
"street": "123 Main St",
"city": "Anytown",
"zip": "12345"
},
"skills": [
"JavaScript",
"HTML",
"CSS"
]
}
Die 2
in JSON.stringify(myDataObject, null, 2)
setzt die Einrückung auf 2 Leerzeichen. Passen Sie diesen Wert (z. B. 4 oder „t“ für Tabulatoren) nach Ihren Wünschen an. null
ist ein Platzhalter für eine Ersetzungsfunktion (die erweiterte Formatierungsoptionen ermöglicht, die in fortgeschritteneren Tutorials behandelt werden).
Neuformatieren von JSON-Strings mit JSON.stringify()
und JSON.parse()
Für schlecht formatierte JSON-Strings (z. B. einzeilig) kombinieren Sie JSON.parse()
und JSON.stringify()
zur Neuformatierung.
Beispiel für einen nicht formatierten JSON-String:
const unformattedJson = '{"name":"Jane Doe","age":25,"city":"New York"}';
Analysieren Sie zuerst den String in ein JavaScript-Objekt:
const jsonObject = JSON.parse(unformattedJson);
Formatieren Sie dann das Objekt mit JSON.stringify()
zurück in einen JSON-String:
const formattedJson = JSON.stringify(jsonObject, null, 4); // 4 Leerzeichen für Einrückung
console.log(formattedJson);
Ergebnis:
{
"name": "Jane Doe",
"age": 25,
"city": "New York"
}
Dieser zweistufige Prozess bereinigt effektiv schlecht formatierte JSON-Daten. Behandeln Sie immer potenzielle JSON.parse()
-Fehler (mit einem try...catch
-Block), um unerwartete Anwendungsabstürze zu vermeiden.
Zusammenfassend lässt sich sagen, dass JSON.stringify()
, mit oder ohne JSON.parse()
, eine einfache Möglichkeit bietet, JSON-Daten in JavaScript zu formatieren und die Lesbarkeit des Codes deutlich zu verbessern.