JSON.stringify()

Der regelmäßige Gebrauch von JSON ist der Datenaustausch mit Webservern.

Bei der Übermittlung von Daten an einen Webserver müssen die Daten ein String sein.

Durch JSON.stringify() Wandeln Sie JavaScript-Objekte in einen String um.

Stringifizieren Sie JavaScript-Objekte

Stellen Sie sich vor, wir haben in JavaScript diesen Objekt:

var obj = { name:"Bill Gates", age:62, city:"Seattle"};

Verwenden Sie die JavaScript-Funktion JSON.stringify() Konvertieren Sie es in einen String.

var myJSON = JSON.stringify(obj);

Das Ergebnis wird ein String sein, der den JSON-Formatierungsregeln entspricht.

myJSON ist derzeit ein String und bereit, an den Server gesendet zu werden:

Beispiel

var obj = { name:"Bill Gates", age:62, city:"Seattle"};
var myJSON =  JSON.stringify(obj);
document.getElementById("demo").innerHTML = myJSON;

Selbst ausprobieren

Sie werden im nächsten Kapitel lernen, wie Sie JSON an den Server senden.

Stringifizieren Sie JavaScript-Listen

Man kann auch JavaScript-Listen stringifizieren:

Stellen Sie sich vor, wir haben in JavaScript diese Liste:

var arr = [ "Bill Gates", "Steve Jobs", "Elon Musk" ];

Verwenden Sie die JavaScript-Funktion JSON.stringify() Konvertieren Sie es in einen String.

var myJSON = JSON.stringify(arr);

Das Ergebnis wird ein String sein, der den JSON-Formatierungsregeln entspricht.

myJSON ist derzeit ein String und bereit, an den Server gesendet zu werden:

Beispiel

var arr = [ "Bill Gates", "Steve Jobs", "Elon Musk" ];
var myJSON =  JSON.stringify(arr);
document.getElementById("demo").innerHTML = myJSON;

Selbst ausprobieren

Sie werden im nächsten Kapitel lernen, wie Sie JSON an den Server senden.

Ausnahme

Datum stringifizieren

In JSON sind Datumobjekte nicht erlaubt.JSON.stringify() Die Funktion wird jedes Datum in einen String umwandeln.

Beispiel

var obj =  { "name":"Bill Gates", "today":new Date(), "city":"Seattle"};
var myJSON = JSON.stringify(obj);
document.getElementById("demo").innerHTML = myJSON;

Selbst ausprobieren

Sie können den String am Empfangsende in ein Datumobjekt umwandeln.

Funktionssstringifizierung

Funktionen sind in JSON nicht als Objektwerte erlaubt.

JSON.stringify() Funktionen werden alle Funktionen aus dem JavaScript-Objekt entfernen, einschließlich Schlüssel und Werte:

Beispiel

var obj =  { "name":"Bill Gates", "age":function () {return 62;}, "city":"Seattle"};
var myJSON = JSON.stringify(obj);
document.getElementById("demo").innerHTML = myJSON;

Selbst ausprobieren

Wenn Sie in der Ausführung JSON.stringify() Funktion vor dem Konvertieren der Funktion in einen String, dieser Schritt kann weggelassen werden.

Beispiel

var obj =  { "name":"Bill Gates", "age":function () {return 62;}, "city":"Seattle"};
obj.age = obj.age.toString();
var myJSON = JSON.stringify(obj);
document.getElementById("demo").innerHTML = myJSON;

Selbst ausprobieren

Sie sollten Funktionen in JSON vermeiden, da Funktionen ihren Kontext verlieren und Sie auch eval() und sie in Funktionen umwandeln.

Browser-Unterstützung

Alle gängigen Browser und die neuesten ECMAScript (JavaScript)-Standards enthalten JSON.stringify() Funktion:

Die in der Tabelle angegebenen Zahlen spezifizieren die vollständige Unterstützung JSON.stringify() Erste Browser-Version der Funktion:

Ja 8.0 3.5 4.0 10.0