JSON.stringify()

JSONs vanlige bruk er å utveksle data med en webserver.

Når du sender data til en webserver, må dataene være strenger.

Gjennom JSON.stringify() Konverter JavaScript-objektet til en streng.

Stringifiser JavaScript-objekt

Forestill deg at vi har denne objekten i JavaScript:

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

Bruk JavaScript-funksjonen JSON.stringify() Konverter det til en streng.

var myJSON = JSON.stringify(obj);

Resultatet vil være en streng som følger JSON-merknadsloven.

myJSON er for øyeblikket en streng og er klar til å sendes til serveren:

Eksempel

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

Prøv det selv

Du vil lære hvordan du sender JSON til serveren i neste kapittel.

Stringify JavaScript-liste

Man kan også stringifisere JavaScript-lister:

Forestill deg at vi har denne listen i JavaScript:

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

Bruk JavaScript-funksjonen JSON.stringify() Konverter det til en streng.

var myJSON = JSON.stringify(arr);

Resultatet vil være en streng som følger JSON-merknadsloven.

myJSON er for øyeblikket en streng og er klar til å sendes til serveren:

Eksempel

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

Prøv det selv

Du vil lære hvordan du sender JSON til serveren i neste kapittel.

Unntak

Datostringifisering

I JSON er det ikke tillatt med datoobjekter.JSON.stringify() Funktionen vil konvertere hvilken som helst dato til en streng.

Eksempel

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

Prøv det selv

Du kan konvertere strengen til en datoen på mottakeren.

Funktionstringifikation

Funktioner er ikke tilladt som objektværdier i JSON.

JSON.stringify() Funktionen vil fjerne alle funktioner fra JavaScript-objektet, herunder nøgler og værdier:

Eksempel

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

Prøv det selv

Hvis du kører JSON.stringify() Funktionen er allerede konverteret til en streng før funktionen, dette trin kan springes over.

Eksempel

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;

Prøv det selv

Du bør undgå at bruge funktioner i JSON, da funktionen mister sin kontekst, og du skal også bruge eval() Konverter dem til funktioner igen.

Browser-støtte

Alle主流浏览器和最新的 ECMAScript (JavaScript) standarder inkluderer JSON.stringify() Funktion:

Tallene i nedenstående tabel specificerer fuld støtte JSON.stringify() Første browser-version af funktionen:

Ja 8.0 3.5 4.0 10.0