Kigeuzi cha Bure

Muundo wa JSON & Kithibitishaji

Fomati, rekebisha, na uthibitishe JSON papo hapo kwenye kivinjari chako. Hakuna upakiaji unaohitajika - faragha kabisa na bila malipo.

Buruta na Udondoshe faili ya JSON hapa

Inaauni faili za .json. Au ubandike JSON yako katika eneo lililo hapo juu.

Au

Kuhusu zana hii

Uumbizaji wa JSON (ambao mara nyingi huitwa uchapishaji mzuri au urembo) huchukua JSON sanjari na kuongeza nafasi nyeupe - mapumziko ya mistari, ujongezaji, nafasi thabiti - ili kufanya muundo uonekane kwa wasomaji binadamu. Compact JSON ndio umbizo sahihi la uwasilishaji: hupunguza baiti juu ya waya na hifadhi. JSON iliyoumbizwa ndiyo umbizo sahihi la kukaguliwa: daraja la chini hufichua muundo uliowekwa katika mtazamo, hufanya tofauti ziwe na maana, na huwaruhusu wasanidi programu kutafuta sehemu mahususi bila kuchanganua hati kimawazo.

Mpangilio huu huchanganua ingizo kama JSON ili kuthibitisha kuwa ni sahihi, kisha huitoa tena kwa ujongezaji thabiti. Ingizo batili hutoa hitilafu inayoelekeza kwenye tatizo la sintaksia. Ingizo halali hufomatiwa upya bila kujali jinsi chanzo kilikuwa kigumu au kichafu. Ujongezaji chaguomsingi kwa nafasi mbili, zinazolingana na mkusanyiko wa kawaida wa JavaScript.

Umbizo pia hutoa minification (operesheni kinyume), ambayo huondoa nafasi nyeupe isiyohitajika ili kutoa JSON ndogo zaidi halali. Pato ndogo ni muhimu kwa usambazaji wa uzalishaji; pato lililoumbizwa ni muhimu kwa ukuzaji na utatuzi.

Kwa nini umbizo la JSON

Kusoma JSON iliyohifadhiwa kwa undani bila ujongezaji haiwezekani - muundo upo kiufundi lakini hauonekani. Hata JSON changamano kiasi inafaidika sana kutokana na umbizo. Wakaguzi wa msimbo, vitatuzi vya API, na mtu yeyote anayejaribu kuelewa mzigo wa data anahitaji muundo wa JSON ili kuona ni nini hasa kilicho hapo.

Uumbizaji pia hupata makosa. Iwapo JSON itashindwa kuchanganua wakati wa uumbizaji, ujumbe wa hitilafu hutambua mahali pa usahihi pa tatizo la sintaksia - mara nyingi koma inakosekana, ufunguo ambao haujanukuliwa, au koma iliyopotea ambayo mfumo wa utayarishaji haukualamisha. Fomati ndio kithibitishaji rahisi zaidi cha JSON kinachopatikana.

Jinsi ya kutumia

Bandika JSON, bofya umbizo.

  1. Bandika JSON yako: Bandika JSON mbichi au iliyosongamana kwenye eneo la kuingiza data. Kuburuta na kudondosha faili za .json pia hufanya kazi.
  2. Chagua ujongezaji: Chaguomsingi ni nafasi 2. Tumia nafasi 4 kwa miradi inayofuata mkusanyiko huo, au vichupo ikiwa zana zako za mkondo wa chini zinazihitaji.
  3. Umbizo: Ingizo huchanganuliwa kupitia JSON.changanua ili kuthibitisha uhalali, kisha kukusanywa kwa JSON.stringify na ujongezaji uliochaguliwa. Hitilafu katika ingizo hutoa ujumbe wa hitilafu wa kuchanganua kutambua eneo la tatizo.
  4. Nakili au pakua: Nakili JSON iliyoumbizwa kwenye ubao wa kunakili au uhifadhi kama .json. Matokeo yanafanana kimuundo na ingizo lakini yenye nafasi nyeupe thabiti.

Kesi za Matumizi ya Kawaida

Maelezo ya Kiufundi

Fomati hutumia JSON.parse na JSON.stringify, jozi sawa kila wakati JavaScript inasafirishwa. Uchanganuzi hufuata RFC 8259 (kipengele cha sasa cha JSON), kukubali JSON kali lakini kukataa maandishi halisi ya kitu cha JavaScript, maoni, koma zinazofuata, na viendelezi vingine vya JSON5.

JSON.stringify inakubali hoja ya ndani: nambari (nafasi) au mfuatano (herufi maalum ya kujongea, kama vile kichupo). Mpangilio hufichua chaguo zote mbili. Pato limepangwa kwa mpangilio wa chanzo wa vitu (tangu agizo la ES2015 la uwekaji mali limehifadhiwa kwenye injini zote kuu).

Kesi za ukingo: nambari kubwa zaidi ya Nambari. MAX_SAFE_INTEGER hupoteza usahihi inapochanganuliwa (kikomo cha juu cha JSON kinachojulikana; tumia thamani za mifuatano kwa Vitambulisho vinavyozidi 2^53). Unicode epuka katika masharti huhifadhiwa halisi. Nafasi nyeupe inayofuata imetolewa kutoka kwa kila mstari.

Mazoea Bora

Maswali yanayoulizwa mara kwa mara

Chombo hiki hugundua aina gani za makosa ya JSON?
Zana hutambua koma zinazokosekana, mabano/viunga visivyolingana, kutoroka kwa kamba, koma zinazofuata, mifuatano iliyonukuliwa na ukiukaji mwingine wa sintaksia kulingana na vipimo vya RFC 8259 JSON.
Inaweza kushughulikia faili kubwa za JSON?
Ndiyo. Kifomati huchakata JSON katika kivinjari chako kwa kutumia uchanganuzi asilia wa JavaScript, kwa hivyo hushughulikia faili hadi megabaiti kadhaa kwa ufanisi. Kwa faili kubwa sana (50MB+), muda wa kuchakata unategemea kifaa chako.
Inasaidia JSON na maoni (JSONC)?
JSON ya kawaida hairuhusu maoni. Ikiwa ingizo lako lina maoni, kiidhinishi atayaalamisha kama makosa. Kwa usaidizi wa JSONC, ondoa maoni kabla ya kuumbiza.
Je, umbizo litabadilisha thamani zangu za data?
Hapana. Uumbizaji hurekebisha tu nafasi nyeupe na ujongezaji - aina, thamani na muundo wa data yako hubaki sawa.
Je, vipengele vya JSON5 vinatumika (maoni, koma zinazofuata)?
Hapana. Mpangilio hufuata RFC 8259 kikamilifu. Vipengele vya JSON5 husababisha makosa ya uchanganuzi. Ili kufanya kazi na JSON5, badilisha hadi JSON ya kawaida kwanza ukitumia kichanganuzi cha JSON5.
JSON yangu imepakiwa kwenye seva?
Hapana. Uchanganuzi na uumbizaji hutokea kabisa katika kivinjari chako kwa kutumia vitendaji vilivyojengewa ndani vya JSON.
Je, idadi kubwa itapoteza usahihi?
JavaScript inawakilisha nambari kama kuelea kwa biti 64, kwa hivyo nambari kamili zaidi ya 2^53 (takriban quadrillioni 9) hupoteza usahihi. Kwa vitambulisho au nambari zingine kubwa kamili, zihifadhi kama mifuatano katika JSON.
Je, ninaweza kupanga funguo kwa alfabeti?
JSON.stringify haipanga vitufe. Tumia hatua tofauti ya kupanga (au kiumbiza kilicho na usaidizi wa kupanga) ili kuweka vitufe vya alfabeti kabla ya kuweka masharti.