Umgang mit Zeilenumbrüchen in JSON
In JavaScript kann der Versuch, JSON-Daten zu analysieren, die Zeilenumbrüche enthalten, zu Fehlern führen. Dieses Problem tritt bei der Verwendung von eval() oder JSON.parse() auf, da diese Newline-Zeichen (n) innerhalb einer Zeichenfolge in Anführungszeichen als Zeichenfolgenabschlusszeichen interpretieren.
Beachten Sie den folgenden problematischen JSON:
var data = '{"count" : 1, "stack" : "sometext\n\n"}';
Der Versuch, diese Daten mit eval() oder JSON.parse() auszuwerten, führt zu einem Fehler „nicht abgeschlossenes Zeichenfolgenliteral“. Um dieses Problem zu beheben, müssen Zeilenumbrüche innerhalb von Zeichenfolgen in Anführungszeichen mit einem doppelten Backslash (") maskiert werden.
Das korrekte JSON-Format wäre:
var data = '{"count" : 1, "stack" : "sometext\n\n"}';
Durch das Escapezeichen in der Zeichenfolge wird es wird als Zeilenumbruchzeichen innerhalb der JSON-Daten interpretiert, z. B. Zeichenfolge分隔符。Sie können eval() und JSON.parse() verwenden, um die JSON-Funktion zu nutzen, und die JSON-Funktion zu verwenden.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit Zeilenumbrüchen in JSON-Strings richtig um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!