JavaScript: Wie kann ich formatiertes, leicht lesbares JSON direkt aus einem Objekt generieren? [duplicate]

Lesezeit: 2 Minuten

Benutzeravatar von Ben Clayton
Ben Clayton

Mögliches Duplikat:

Wie kann ich JSON programmgesteuert verschönern?

Ich weiß, wie man JSON aus einem Objekt mit JSON.stringify generiert, oder in meinem Fall das Handy jQuery-JSON von Google-Code.

Jetzt funktioniert das gut, aber die Ausgabe ist für Menschen schwer lesbar. Gibt es eine einfache Möglichkeit, Funktion oder was auch immer, um eine ordentlich formatierte JSON-Datei auszugeben?

Das ist was ich meine:

JSON.stringify({a:1,b:2,c:{d:1,e:[1,2]}});

gibt…

"{"a":1,"b":2,"c":{"d":1,"e":[1,2]}}"

Ich hätte stattdessen gerne so etwas:

{
 "a":1,
 "b":2,
 "c":{
    "d":1,
    "e":[1,2]
 }
}

ZB mit hinzugefügten Zeilenumbrüchen und Tabulatoren. Es ist viel einfacher, größere Dokumente zu lesen.

Ich möchte dies idealerweise tun, ohne beispielsweise große Bibliotheken hinzuzufügen, nicht Prototyp, YUIoder Wasauchimmer.

  • Vielleicht hilft das: jsoneditoronline.org

    – einladen

    2. März 2016 um 19:39 Uhr

  • Jetzt wissen Sie, warum viele XML statt JSON bevorzugen. Es ist viel besser lesbar.

    – Hermann van der Blom

    1. Dezember 2021 um 13:35 Uhr

Benutzeravatar von Cristian Sanchez
Cristian Sánchez

JSON.stringify dauert mehr optionale Argumente.

Versuchen:

 JSON.stringify({a:1,b:2,c:{d:1,e:[1,2]}}, null, 4); // Indented 4 spaces
 JSON.stringify({a:1,b:2,c:{d:1,e:[1,2]}}, null, "\t"); // Indented with tab

Von:

Wie kann ich JSON programmgesteuert verschönern?

Es sollte in modernen Browsern funktionieren und ist in enthalten json2.js wenn Sie einen Fallback für Browser benötigen, die die JSON-Hilfsfunktionen nicht unterstützen. Legen Sie die Ausgabe zu Anzeigezwecken in a <pre> -Tag, um Zeilenumbrüche anzuzeigen.

  • Ist diese Antwort nicht etwas ungenau, da das OP seine verschönerte Version mit geschrieben hat "e":[1,2] alles auf einer linie? Ist es möglich, eingerücktes und nicht eingerücktes JSON mit Stringify zu mischen?

    – Chamberlainpi

    7. Juni 2016 um 4:53 Uhr

  • Denken Sie nur daran, es in etwas wie

     einzufügen, um neue Zeilen zu erhalten.

    – Tymtam

    17. Juli 2016 um 22:56 Uhr

  • github.com/Phrogz/NeatJSON und npm.io/package/json-beautify bieten mehr Kontrolle und Optionen für die programmatische Stringifizierung von JSON.

    – iislucas

    10. Mai 2022 um 9:55 Uhr

  • Sie können verwenden white-space: pre anstelle einer <pre>wenn Sie es vorziehen.

    – Sam Dutton

    4. Juli 2022 um 15:59 Uhr

1439130cookie-checkJavaScript: Wie kann ich formatiertes, leicht lesbares JSON direkt aus einem Objekt generieren? [duplicate]

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy