Syöte

Tila:

Tulos

Mikä on JSON Escape?

Oletko koskaan yrittänyt tallentaa JSON-objektin tietokantasarakkeeseen tai saanut API:lta merkkijonon, joka on täynnä \"- ja \\-merkkejä? Se on JSON-pakottamista. RFC 8259 -standardi edellyttää tiettyjen merkkien pakottamista merkkijonoissa — kaksoislainausmerkit, kenoviivat, rivinvaihdot, tabulaattorit ja ohjausmerkit — jotta JSON-jäsennin ei sekoita niitä syntaksiin. Tämä työkalu tekee molemmat: pakottaa tavallisen tekstin kelvolliseksi JSON-merkkijonoksi tai purkaa escape-sekvenssejä sisältävän merkkijonon takaisin todellisiksi merkeiksi.

Tällä työkalulla on kaksi tilaa: Pakota ja Pura. Vaihda niiden välillä ylhäällä. Molemmat toimivat selaimessasi; mitään ei lähetetä palvelimelle.

Miten työkalua käytetään

1

Valitse tila

Valitse Pakota muuntaaksesi erikoismerkit escape-sekvensseiksi tai Pura muuntaaksesi ne takaisin.

2

Liitä syöte

Liitä teksti vasempaan editoriin. Voit liittää raakamerkkijonon, JSON-merkkijonon arvon tai täydellisen JSON-dokumentin. Käytä Esimerkki- tai Lataa-painiketta tarvittaessa.

3

Kopioi tulos

Oikea paneeli päivittyy automaattisesti. Käytä Kopioi tai Lataa tiedostona saadaksesi tuloksen. Pakotettujen JSON-merkkijonojen jäsentämiseen objekteiksi kokeile Merkkijono JSONiksi.

JSON Escape -esimerkkejä

Pakottaminen muuntaa erikoismerkit escape-sekvensseiksi. Telecom-aiheinen esimerkki:

Raakamuotoinen syöte (rivinvaihdolla)

Syöte

Pakotettu tulos

Tulos

Milloin pakottaminen on tärkeää

Kun upotat JSON-merkkijonon toisen JSON-merkkijonon sisään tai tallennat JSON:ia tietokantakenttään, joka odottaa merkkijonoa, pakottaminen varmistaa, että sisäiset lainausmerkit ja kenoviivat eivät riko rakennetta. Kun rakennat JSON:ia ohjelmallisesti, JSON.stringify() käsittelee pakottamisen automaattisesti. Tämä työkalu on manuaaliseen muokkaukseen tai kun käsittelet esipakotettujen merkkijonojen kanssa lokeista tai API:eista.

Purkaminen on hyödyllistä, kun saat kaksinkertaisesti pakotetun merkkijonon (esim. API:lta, joka palauttaa JSON:in merkkijonona) ja tarvitset todellisen JSON:in. Merkkijono JSONiksi -työkalu voi jäsentää pakotettuja merkkijonoja suoraan.

Usein kysyttyä

Mitkä merkit täytyy pakotetaa JSON:ssa?

RFC 8259 -standardi edellyttää pakottamista: kaksoislainausmerkit "\", kenoviivat \\\, rivinvaihdot → \n, tabulaattorit → \t, rivinpalautukset → \r ja ohjausmerkit (U+0000–U+001F) → \uXXXX.

Kuinka purkaa JSON-merkkijono JavaScriptissä?

Käytä JSON.parse(). Jos pakotettu merkkijono on lainausmerkeissä, JSON.parse('"' + escaped + '"') muuntaa sen todelliseksi arvoksi. Täydellisen JSON-objektin tapauksessa JSON.parse(jsonString) tekee purkamisen ja jäsentämisen samanaikaisesti.

Milloin minun täytyy purkaa JSON?

Kun saat kaksinkertaisesti pakotettua JSON:ia — esimerkiksi API, joka palauttaa JSON:in merkkijonona toisen JSON:in sisällä, tai tietokantakenttä, joka tallentaa JSON:in stringinä. Purkaminen poistaa ulomman kerroksen, jotta voit työskennellä todellisen JSON:in kanssa.

Pakottaako JSON.stringify() merkit automaattisesti?

Kyllä. JSON.stringify() pakottaa automaattisesti lainausmerkit, kenoviivat, rivinvaihdot ja ohjausmerkit. Tämä työkalu on hyödyllinen, kun muokkaat merkkijonoja manuaalisesti, debuggaat väärin muotoiltua JSON:ia tai työskentelet esipakotettujen merkkijonojen kanssa lokeista tai API:eista.

Lähetetäänkö tietoni palvelimelle?

Ei. Kaikki käsittely tapahtuu selaimessasi. Tietosi eivät koskaan poistu laitteeltasi, mikä tekee siitä turvallisen arkaluonteisia tietoja sisältävälle JSON:ille.

Liittyvät työkalut

JSON-merkkijonojen pakottamissäännöt: RFC 8259. MDN kattaa JSON:n JavaScriptissä. JSON-määrittely määrittelee kaikki escape-sekvenssit. Jäsentämiseen: JSON.parse() ja JSON.stringify(). jq-työkalu käsittelee JSON:ia komentorivillä.