Kuptimi i sintaksës dhe strukturës JSON
JSON (JavaScript Object Notation) është një format i lehtë për shkëmbimin e të dhënave, i cili bazohet në dy struktura kryesore: objekte (koleksione çiftesh çelës-vlerë) dhe vargje (lista të rregulluara vlerash). Çelësat e objekteve duhet të jenë gjithmonë vargje të mbështjella me thonjëza të dyfishta. Vlerat mund të jenë vargje, numra, objekte, vargje (arrays), vlera booleane (true/false) ose null.
Ky mjet ofron mbështetje të plotë për përpunimin e këtyre strukturave, duke ruajtur numrat e plotë të mëdhenj pa asnjë humbje saktësie gjatë formatimit. Përveç formatit standard, mjeti mbështet edhe sintaksën JSONC, e cila lejon përdorimin e komenteve dhe presjeve fundore. Përdoruesit mund të zgjedhin midis këtyre dy opsioneve përmes etiketës "Sintaksa".
Rëndësia e validimit të të dhënave JSON
Validimi siguron që të dhënat tuaja të jenë të strukturuara saktë përpara se të dërgohen në një API ose të përdoren në skedarë konfigurimi. Kur futni të dhëna në mjet, ai kryen një kontroll automatik. Nëse të dhënat janë të sakta, shfaqet mesazhi "JSON i vlefshëm". Në rast gabimi, mjeti shfaq "JSON i pavlefshëm" dhe tregon vendndodhjen e saktë të problemit në formatin "rreshti {line}, kolona {col}".
Mjeti identifikon gabime specifike strukturore, duke përfshirë:
- "Mungon presja midis elementeve"
- "Presje e tepërt para kllapës mbyllëse"
- "Çelësat e objektit duhet të jenë në thonjëza të dyfishta"
- "Mungojnë dy pikat pas emrit të vetisë"
- "Një vargu i mungon thonjëza mbyllëse"
- "JSON përfundon shumë herët — duket i prerë"
- "Karakter i papritur aty ku duhej të ishte një vlerë"
- "Ky JSON është i strukturuar shumë thellë për t'u përpunuar"
- "Çelës i dyfishuar
{key}— hiqni njërin para formatimit"
Përdoruesit mund të përdorin butonin "Shko te gabimi" për të gjetur menjëherë pozicionin e saktë të problemit në kod.
Formatimi dhe minifikimi i JSON
Formatimi përmirëson lexueshmërinë e të dhënave duke aplikuar struktura të qarta me kryerreshta. Përmes opsionit "Hapësira e kryerreshtit", mund të përcaktoni nivelin e dëshiruar të hapësirës për organizimin vizual. Pasi të klikoni butonin "Formato", mjeti do të shfaqë mesazhin "JSON u formatua.".
Në të kundërt, minifikimi shërben për të zvogëluar madhësinë e skedarit për transmetim ose ruajtje më efikase. Duke klikuar butonin "Minifiko", mjeti heq të gjitha hapësirat dhe thyerjet e panevojshme të rreshtave, duke shfaqur mesazhin "JSON u minifikua.". Për të pastruar të gjithë fushën e punës, mund të përdorni butonin "Pastro", i cili kthen gjendjen në "Redaktori u pastrua.". Nëse provoni të kryeni veprime pa vendosur të dhëna, mjeti do të shfaqë njoftimin "Fillimisht ngjitni ose hapni një JSON.".
Navigimi me pamjen pemë (Tree View)
Për dokumente komplekse, mjeti ofron dy mënyra shfaqjeje nën etiketën "Pamja": "Kod" dhe "Pemë". Pamja "Pemë" krijon një strukturë interaktive të emërtuar "Pema JSON", ku nyja kryesore mban etiketën "rrënja".
Në këtë pamje mund të përdorni funksionalitetet e mëposhtme:
- Kërkimi: Kutia "Kërkoni çelësa dhe vlera" lejon gjetjen e elementeve specifike. Rezultatet shfaqen si "
{current}nga{total}" ose "{current}nga{total}+" nëse numri i përputhjeve është shumë i lartë. Nëse nuk ka rezultate, shfaqet "Asnjë përputhje". Navigimi bëhet me butonat "Përputhja e mëparshme" dhe "Përputhja tjetër". - Zgjerimi dhe palosja: Mund të përdorni butonat "Zgjero të gjitha" dhe "Palos të gjitha". Gjithashtu, çdo nyje individuale mund të kontrollohet me butonat "Zgjero
{key}" dhe "Palos{key}". - Kopjimi i shpejtë: Përmes menusë "Opsionet e kopjimit për
{key}", mund të zgjidhni "Kopjo vlerën", "Kopjo JSON Pointer" ose "Kopjo JSONPath" për të nxjerrë rrugë të sakta të të dhënave.
Nëse JSON-i përmban gabime, pamja pemë nuk mund të ndërtohet dhe shfaqet mesazhi "Rregulloni JSON-in për ta parë si pemë strukturore.".
Identifikimi dhe rregullimi i formateve jo-standarde
Mjeti zbulon automatikisht formate të ndryshme që nuk përputhen me standardin e rreptë JSON dhe ofron zgjidhje për rregullimin e tyre:
| Formati i detektuar | Mesazhi i detektimit | Veprimi i rregullimit |
|---|---|---|
| Markdown Code Fence | "Kjo duket si JSON brenda një blloku kodi Markdown." | "Me aplikimin mbetet vetëm JSON-i brenda bllokut." |
| String i escape-uar | "Kjo duket si JSON i escape-uar brenda një stringu." | "Me aplikimin stringu zh-escape-ohet në JSON të thjeshtë." |
| Fjalor Python | "Kjo duket si një fjalor në stil Python dhe jo si JSON." | "Me aplikimin thonjëzat dhe True/False/None rishkruhen si JSON." |
| JSON Lines | "Kjo duket si JSON Lines — një vlerë për rresht." | "Me aplikimin rreshtat mblidhen në një varg të vetëm JSON." |
| JSONP Callback | "Kjo duket si JSON i mbështjellë në një callback JSONP." | "Me aplikimin hiqet mbështjellësi i callback-ut." |
| JSONC | "Kjo duket si JSONC — komente ose presje fundore. Kaloni sintaksën në JSONC ose aplikoni rregullimin." | "Me aplikimin hiqen komentet dhe presjet fundore." |
Për të parë ndryshimet përpara aplikimit, mund të klikoni "Parashiko rregullimin", i cili hap dritaren "Pamje paraprake e rregullimit" me ndarjet "Origjinali" dhe "Pas rregullimit". Nëse rregullimi nuk mund të bëhet, shfaqet "Ky input nuk mund të rregullohej automatikisht.". Pasi klikoni "Apliko rregullimin", shfaqet mesazhi "Rregullimi u aplikua. Shtypni Ctrl/Cmd+Z për të zhbërë.".
Menaxhimi i skedarëve dhe kufizimet e performancës
Mjeti ju lejon të ngarkoni skedarë përmes butonit "Hap skedarin" ose duke i tërhequr ato në zonën "Lëshoni këtu një skedar.json ose.txt". Pas ngarkimit të suksesshëm, shfaqet njoftimi "U ngarkua {name} ({size}).".
Gjatë punës me skedarë dhe inpute të mëdha, zbatohen rregullat dhe kufizimet e mëposhtme:
- Kufiri i madhësisë së skedarit: Nëse skedari kalon kufirin e lejuar, shfaqet "Skedari është shumë i madh — kufiri është
{limit}.". Kufiri maksimal i inputit që mjeti mund të përpunojë është 10 MiB, përtej të cilit shfaqet "Hyrja është më e madhe se{limit}, më shumë sesa mund të përpunojë ky mjet.". - Formatet dhe kodimi: Mbështeten vetëm skedarët
.jsonose.txt. Nëse ngarkoni format tjetër, shfaqet "Lloj skedari i pambështetur — zgjidhni një skedar.json ose.txt.". Skedarët duhet të jenë të koduara në UTF-8; përndryshe shfaqet "Ky skedar nuk është tekst UTF-8, prandaj nuk mund të hapet këtu.". Nëse ndodh një gabim leximi, shfaqet "Skedari nuk u lexua dot. Provoni ta zgjidhni përsëri.". - Kufizimet e pamjes pemë: Nëse dokumenti është shumë i madh, pamja pemë do të shfaqë "Ky JSON është shumë i madh për t'u shfaqur si pemë strukturore." ose "Ky JSON ka shumë vlera për t'u shfaqur si pemë.". Kur zgjeroni të gjitha nyjet në dokumente të mëdha, shfaqet "Ky JSON është shumë i madh për t'u zgjeruar plotësisht — po shfaqen
{count}rreshtat e parë." me opsionin për të klikuar "Shfaq edhe{count}të tjera…". - Koha e përpunimit: Pragu i përpunimit sinkron është 250,000 karaktere. Nëse kontrolli zgjat shumë, procesi ndërpritet me mesazhin "Kontrolli i këtij JSON zgjati shumë dhe u ndalua. Provoni një dokument më të vogël.".
Mund të renditni çelësat e objekteve në mënyrë rekurente sipas pikave të kodit duke klikuar "Rendit çelësat". Ky veprim nuk ndryshon rendin e vargjeve. Pas renditjes, shfaqet mesazhi "Çelësat u renditën — rendi i vargjeve mbetet i pandryshuar. Shtypni Ctrl/Cmd+Z për të zhbërë.". Rezultati mund të shkarkohet duke klikuar "Shkarko", gjë që shfaq njoftimin "U shkarkua {name}.".
Privatësia e të dhënave
JSON-i juaj përpunohet direkt në shfletuesin tuaj. Asgjë nuk ngarkohet në BroBroGo. Ky përpunim lokal garanton që të dhënat tuaja të mos transmetohen në serverë të jashtëm gjatë përdorimit të mjetit.
Pyetje të shpeshta (FAQ)
A ngarkohet JSON-i im?
Jo. Formatuesi ekzekutohet në shfletuesin tuaj dhe nuk e ngarkon JSON-in tuaj në server.
Çfarë bën minifikimi?
Minifikimi (minify) heq hapësirat dhe thyerjet e panevojshme të rreshtave duke ruajtur të njëjtat të dhëna JSON.
Çfarë ndodh nëse ngarkoj një skedar që nuk është UTF-8?
Mjeti mbështet vetëm skedarë të koduar në UTF-8. Nëse skedari ka kodim tjetër, do të shfaqet mesazhi se skedari nuk mund të hapet këtu.
A mund të ndryshojë renditja e vargjeve (arrays) kur rendit çelësat?
Jo. Renditja e çelësat të objekteve bëhet në mënyrë rekurente sipas pikave të kodit, por rendi i vargjeve nuk ndryshon kurrë.