Heim >Web-Frontend >js-Tutorial >Was macht json.stringify()?
json.stringify() wird zum Konvertieren eines JavaScript-Objekts oder -Werts in einen JSON-String verwendet. Wenn eine Ersetzungsfunktion angegeben ist, kann der Wert optional ersetzt werden, oder der angegebene Ersetzungstyp ist ein Array, und nur das Array kann optional ersetzt werden enthalten. Das angegebene Attribut.
Verwandte Empfehlungen: „Javascript-Video-Tutorial“
JavaScript JSON.stringify()
Die Methode JSON.stringify() wird verwendet, um JavaScript-Werte in JSON-Strings umzuwandeln.
Syntax
JSON.stringify(value[, replacer[, space]])
Parameterbeschreibung:
Wert: erforderlich, der zu konvertierende JavaScript-Wert (normalerweise ein Objekt oder Array).
Ersatz: optional. Die Funktion oder das Array, die bzw. das zum Konvertieren des Ergebnisses verwendet wird.
Wenn replacer eine Funktion ist, ruft JSON.stringify die Funktion auf und übergibt den Schlüssel und den Wert jedes Mitglieds. Verwenden Sie den Rückgabewert anstelle des Originalwerts. Wenn diese Funktion undefiniert zurückgibt, wird das Mitglied ausgeschlossen. Der Schlüssel des Root-Objekts ist eine leere Zeichenfolge: „“.
Wenn replacer ein Array ist, werden nur Mitglieder mit Schlüsselwerten im Array konvertiert. Mitglieder werden in derselben Reihenfolge konvertiert wie die Schlüssel im Array.
Leerzeichen: Optional werden dem Text Einrückungen, Leerzeichen und Zeilenumbrüche hinzugefügt. Wenn Leerzeichen eine Zahl ist, wird der Rückgabewerttext auf jeder Ebene um die angegebene Anzahl von Leerzeichen eingerückt um 10 Leerzeichen. Leerzeichen können auch Nichtzahlen verwenden, wie zum Beispiel: t.
Rückgabewert:
Gibt eine Zeichenfolge zurück, die JSON-Text enthält.
Beispielbeschreibung
Hinweis: Die folgenden Ausgabeergebnisse sind alle vom String-Typ. Um die Lesbarkeit zu erleichtern, werden einfache Anführungszeichen '' nicht verwendet, um anzuzeigen, dass es sich um String-Typen handelt
1. Es gibt nur einen Parameter. Der Parameter ist Objekt:
var students = new Array(); students[0] = "pika"; students[1] = "hello"; students[2] = "hey"; var json = JSON.stringify(students); alert(json);Von hier aus können Sie anhand des Vergleichs die Rolle von JSON.stringify() intuitiver erkennen.Sehen Sie sich andere Beispiele an:
["pika","hello","hey"]Anhand dieser Beispiele können Sie erkennen, dass boolesche Werte, Zahlen und Zeichenfolgenobjekte verpackt werden werden während des Serialisierungsprozesses automatisch in die entsprechenden Originalwerte umgewandelt. Schauen Sie noch einmal. Andere Beispiele:
pika,hello,heySie erscheinen im Attributwert eines Nicht-Array-Objekts) oder werden in Null konvertiert (wenn sie im Eigenschaftswert eines Nicht-Array-Objekts erscheinen) Wenn im Array)
Sehen Sie sich das letzte Beispiel an
JSON.stringify({}); // 输出结果:{} JSON.stringify(true); // 输出结果:true JSON.stringify("foo"); // 输出结果:"foo" JSON.stringify([1, "false", false]); // 输出结果:[1,"false",false] JSON.stringify({ x: 5 }); // 输出结果:{"x":5} JSON.stringify({x: 5, y: 6}); //输出结果:{"x":5,"y":6} JSON.stringify([new Number(1), new String("false"), new Boolean(false)]); //输出结果:[1,"false",false]
Wie Sie können siehe Beispiel: Nicht aufzählbare Attribute werden ignoriert
2 Es gibt zwei Parameter, der zweite Parameter ist eine Funktion
Funktionsbeispiel:
JSON.stringify({x: undefined, y: Object, z: Symbol("")}); // 输出结果:{} JSON.stringify([undefined, Object, Symbol("")]); // 输出结果:[null,null,null]' JSON.stringify({[Symbol("foo")]: "foo"}); // 输出结果:{} JSON.stringify({[Symbol.for("foo")]: "foo"}, [Symbol.for("foo")]); // 输出结果:{} JSON.stringify( {[Symbol.for("foo")]: "foo"}, function (k, v) { if (typeof k === "symbol"){ return "a symbol"; } } ); //输出结果:undefined
Sie können sehen, dass es einen Schlüsselwert und einen Wertwert gibt Erinnern Sie sich an den zweiten Parameter, der eingangs als Schlüsselwert erwähnt wurde?
Beispiel:
JSON.stringify( Object.create( null, { x: { value: 'x', enumerable: false }, y: { value: 'y', enumerable: true } } ) );
besteht darin, den ersten Wert zur zugehörigen Verarbeitung an die Funktion zu übergeben
2. Es gibt zwei Parameter, der zweite Parameter ist ein ArrayDer erste Parameter ist ein Array
function replacer(key, value) { if (typeof value === "string") { return undefined; } return value; }
Das Ergebnis ist Nur der erste Wert wird serialisiert, der zweite wird ignoriert. Der erste Parameter ist ein Objekt. , also Das Attribut „Alter“ des Schülerobjekts wird nicht angezeigt am Beispiel direkt. Hinweis Es dürfen nur maximal 10 Einrückungen oder Zeichen vorhanden sein , die Ausgabe ist ein String-Typ. Sie können die Serialisierung und das Format der Ausgabeergebnisse entsprechend Ihren eigenen Anforderungen anpassen.
Weitere Programmierkenntnisse finden Sie unter:
Programmieren lernen! !
Das obige ist der detaillierte Inhalt vonWas macht json.stringify()?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!