JSON.Stringify Method | Forklart

JSON.Stringify Method | Forklart
JSON er en standard for overføring av data på tvers av servere og klienter, og det er det mest kjente formatet som aksepteres av nesten alle moderne programmeringsspråk. Når dataene må overføres over Internett, overføres de som en strengverdi. Når denne strengverdien mottas av applikasjonen, blir den analysert inn i et objekt. Tilsvarende konverteres objektene til JSON -strenger før de sender dem over internett.

I JavaScript er metoden som brukes til å konvertere JavaScript -objekter til JSON -strengen Stringify () Metode, og i dag skal vi dekke bruken og syntaks sammen med eksempler.

Stringify () -metoden

Denne metoden ble introdusert i ES6 -frigjøring av JavaScript, denne metoden brukes til å konvertere JavaScript -objekter og JSON -objekter til JSON -strenger. For å demonstrere dette, ta følgende objekt:

var superhelt =
Navn: "Bruce Wayne",
"Super Power": "Super Rich",
"Biler eid": [

Navn: "Murciélago",
Modell: "LP 640",
Status: "Crashed",
,

Navn: "Aventador",
Modell: "LP 700-4",
Status: "Virker kjørbar etter ulykken",
,
],
;

Hvis vi skriver ut dette objektet på konsollen ved hjelp av følgende linje:

konsoll.logg (superhelt);

Resultatet på konsollen er:

Fra utgangen er det klart at den faktisk blir tatt som et objekt av vår JavaScript -applikasjon. Å skrive ut dette objektet på konsollen var viktig, slik at vi kan se forskjellen mellom en strengutgang og en objektutgang (fordi noen ganger forvirrer de spesielt når vi jobber med Code Editors)

For å konvertere dette til en JSON -streng bruker vi følgende kodelinje:

var superheroString = json.Stringify (superhelt);

For å bekrefte denne konverteringen, bruk følgende linje for å skrive ut variabelen Superherostring på konsollen:

konsoll.logg (superherostring);

Vi får følgende resultat på konsollen:

Du kan observere at vi denne gangen har skrevet ut en streng på konsollen

Stringify () -metoden | Syntaks

Stringify () -metoden tar inn et JavaScript -objekt, konverterer det til en streng og returnerer deretter den strengen som den Returverdi. Syntaksen er definert som

Stringify (verdi: hvilken som helst, erstatning?: (dette: hvilken som helst, nøkkel: streng, verdi: hvilken som helst) => hvilken som helst, plass?: streng | nummer): streng;

Ovennevnte syntaks ser ganske skremmende ut hvis vi ganske enkelt det, blir syntaks:

Stringify (objekt, erstatning, plass);

Fra denne syntaksen kan du se at det tar 3 argumenter:

  • Objektet som skal konverteres til JSON -strengen
  • En erstatningsmetode (som er valgfri)
  • En romparameter som også er valgfri

Stringify () | Erstatnings- og romparameteren

For å forklare erstatnings- og romparameteren, trenger vi først et objekt som vi vil konvertere til en JSON -streng, du kan opprette et objekt ved hjelp av følgende linjer:

var person =
Bil: "Tesla",
Instrument: "Gitar",
Alder: 25,
By: "New York"

Vi kan gi dette objektet inn i den strenge metoden og vise resultatet ved å bruke følgende linje:

konsoll.Logg (JSON.Stringify (person));

Dette vil gi oss følgende resultat:

Men hva om vi ikke vil inkludere "nøkkelverdi" -paret som har nøkkelen "alder". For det kan vi skrive en erstatningsmetode og passere den innenfor det andre argumentet til Stringify -metoden.

Erstatningsargumentet

Dette argumentet tar en erstatningsmetode (), erstatningsmetoden () tar 2 parametere, den ene er nøkkelen og den andre er verdien. For å ignorere et nøkkelverdipar, kan vi returnere en udefinert verdi. Skriv inn følgende kodelinjer:

FunctionReplacer (tast, verdi)
if (nøkkel === "alder")
ReturDeenefined;

returverdi;

Nå, hvis vi bruker denne erstatningsmetoden som et argument til Stringify -metoden med følgende kodelinjer:

konsoll.Logg (JSON.Stringify (person, erstatning));

Vi får følgende utgang på konsollen vår:

Som du kan se, nøkkelverdi par med Key = “Alder” ble ekskludert fra den resulterende strengen.

Romargumentet

Space eller Spacer -argumentet legger en viss plass mellom hver nøkkelverdi par. For eksempel, hvis vi vil ha et rom på 10 tegn mellom hvert nøkkelverdi-par, kan vi bruke følgende kodelinje:

konsoll.Logg (JSON.Stringify (person, null, 10))

Du får følgende resultat på konsollen din:

Jeg har markert plassen med en rød linje for å gjøre det fremtredende

Du kan også bruke en streng for romargumentet. Denne strengen vil bli lagt til som en substring før hvert nøkkelverdipar. For å demonstrere dette, ta følgende kodelinje:

konsoll.Logg (JSON.Stringify (person, null, "s"));

Du får følgende utfall på konsollen din:

Som du kan se, argumentet “S” ble lagt til som en substring før hver nøkkelverdi par.

Konklusjon

JSON.Stringify () -metode brukes til å konvertere JavaScript -objekter til JSON -strenger slik at de kan overføres over Internett eller mellom forskjellige applikasjoner på din lokale maskin. Denne metoden ble lagt til i JavaScript med utgivelsen av ECMAV6 -versjonen av JavaScript som kjører på V8 JavaScript -motoren. I dette innlegget lærte vi om detaljene i Stringify () metode og dens bruk sammen med eksemplene.