Heim >Web-Frontend >js-Tutorial >Wie kann ich JSON in JavaScript hübsch drucken und Syntaxhervorhebung hinzufügen?

Wie kann ich JSON in JavaScript hübsch drucken und Syntaxhervorhebung hinzufügen?

Linda Hamilton
Linda HamiltonOriginal
2024-12-19 22:34:11524Durchsuche

How can I pretty-print JSON in JavaScript and add syntax highlighting?

Pretty-Printing JSON in JavaScript

Die Anzeige von JSON in einem für Menschen lesbaren Format ist für das Verständnis und die Fehlerbehebung von Daten unerlässlich. In JavaScript wird dies durch die native Funktion JSON.stringify() erreicht.

Native Pretty-Printing:

Das dritte Argument von JSON.stringify() ermöglicht Pretty -printing und gibt die Einrückungsebene an. Zum Beispiel:

var str = JSON.stringify(obj, null, 2); // spacing level = 2

Dadurch wird JSON mit zwei Einrückungsstellen ausgegeben, was die Lesbarkeit erleichtert.

Syntaxhervorhebung:

Für Bei einer aufwändigeren Formatierung können Sie reguläre Ausdrücke verwenden, um verschiedene Elemente innerhalb der JSON-Zeichenfolge hervorzuheben.

function syntaxHighlight(json) {
  return json.replace(/("(\u[a-zA-Z0-9]{4}|\[^u]|[^\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g, function (match) {
    var cls = 'number';
    if (/^"/.test(match)) {
      if (/:$/.test(match)) {
        cls = 'key';
      } else {
        cls = 'string';
      }
    } else if (/true|false/.test(match)) {
      cls = 'boolean';
    } else if (/null/.test(match)) {
      cls = 'null';
    }
    return '<span class="' + cls + '">' + match + '</span>';
  });
}

Diese Funktion ersetzt bestimmte Muster durch HTML-Tags, um Stile wie Farbe auf verschiedene JSON-Elemente anzuwenden.

Vollständiger Codeausschnitt:

Hier ist ein umfassendes Beispiel:

function output(inp) {
  document.body.appendChild(document.createElement('pre')).innerHTML = inp;
}

function syntaxHighlight(json) {
  return json.replace(/&amp;/g, '&amp;amp;').replace(/</g, '&amp;lt;').replace(/>/g, '&amp;gt;');
}

var obj = {a:1, 'b':'foo', c:[false,'false',null, 'null', {d:{e:1.3e5,f:'1.3e5'}}]};
var str = JSON.stringify(obj, undefined, 4);

output(str);
output(syntaxHighlight(str));

Dieses Skript analysiert ein JSON-Objekt, druckt es hübsch aus und zeigt es zusammen mit syntaxhervorgehobenem JSON an.

Das obige ist der detaillierte Inhalt vonWie kann ich JSON in JavaScript hübsch drucken und Syntaxhervorhebung hinzufügen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn