Menene rage na JSON?
JSON (JavaScript Object Notation) tsari ne mai nauyi kaɗan, na rubutu don musayar bayanai da RFC 8259 da ECMA-404 suka bayyana. Rage yana cirewa kowane sarari, tab, da layin sabon da yake a wajen rubutun kirtani — ana adana ƙimomi byte-zuwa-byte, ana cire sarari mai ado kawai. Fitarwa tana bincike zuwa ƙima guda ɗaya kamar shigarwa.
Yadda rage na JSON ke aiki?
Ana sarrafa shigarwar ka gaba ɗaya a cikin burauzarka ta amfani da ayyukan JSON.parse da JSON.stringify na asali. Matakai mafi girma sune:
- Ana karanta shigarwar ka daga yankin rubutu da kansa — kowane byte da ka liƙa ana adane shi a ƙwaƙwalwa a gida.
- Burauzar tana bincike shi da
JSON.parse. Idan shigarwa ba JSON mai inganci ba ce, parser yana jefaSyntaxErrorwanda aka kama kuma aka fitar da shi da kansa — rubutun ka ba ya taba barin shafin. - Lokacin da bincike ya yi nasara, ana sake fitar da ƙima da aka bincike da
JSON.stringify(value)— babu gardama na shinge — yana samar da mafi ƙanƙanta siffa mai inganci na ƙima guda ɗaya. - Ana ƙididdige tsawon byte na rubutun asali da na rubutun da aka rage da
new TextEncoder().encode(...).byteLength— ƙididdigan baiti na UTF-8 guda ɗaya da maɓallin HTTP zai gani a waya. - Ana rubuta fitarwa zuwa yankin rubutu mai karatu-kawai, ɗigon ma'auni yana rahoto bambancin baiti tare da kashi da aka adana, kuma maɓallin Sauke yana sarrafa sakamakon a matsayin fayil ɗin
.min.jsonda za ka iya aikawa.
Me ya sa rage JSON da wannan kayan aiki?
- Sirri: kowane bincike, rage, da wucewar ma'auni yana gudana a cikin burauzarka. JSON ba ya taɓa maɓallinmu — babu loda, babu telemetry, babu asusun.
- Lambobin baiti na gaske: ana ƙididdige girman asali, girman da aka rage, da adanawa da TextEncoder don ka ga bambancin baiti na UTF-8 na gaske da CDN ko API gateway zai biya ka.
- Babu asarar bayanai: rage na ado ne kawai — kowane ƙima yana bincike zuwa bishiyar JSON guda ɗaya, don haka lafiya ne ga nauyin samarwa, manifests, da abubuwan da aka haɗa.
- Sauri: tsarkakakken
JSON.parse+JSON.stringifyyana sarrafa nauyin girman allo nan take, ba tare da ɗakunan karatu na waje don loda ba.
Menene ayyukan gari na rage na JSON?
Cirewa sarari maras muhimmanci daga JSON yana bayyana a duk haɓaka yanar gizo, injiniyan bayanai, da tsarin da aka haɗa:
- Rage nauyin API: rage jikin mai aiki da amsa kafin su wuce API gateway mai aunawa, hanyar fitar da ake biya, ko hanyar tauraron dan adam.
- Haɗawa a cikin HTML: haɗa ɗigon JSON a cikin sifa ta
data-*ko tag na<script type="application/json">ba tare da fitar sarari na mai buga da kyau zuwa shafin da aka nuna ba. - Ƙaramin localStorage: rage amfani da adana localStorage / IndexedDB ta hanyar rubuta JSON da aka rage maimakon JSON da aka buga da kyau, wanda yake da daraja musamman a burauzar wayar hannu tare da iyakokin adana mai ƙarfi na kowace asali.
Yaya misali na rage na JSON ke kama?
Liƙa fayil ɗin tsari da aka buga da kyau na 1.2 KB (kusan baits 1,225 tare da shingen sarari biyu) kuma danna Rage yawanci yana haɗa shi zuwa ƙasa da 0.4 KB — adanawa ta kashi 66 — tare da kowane makulli da ƙima da aka adana daidai. Fayil ɗin output.min.json da za a sauke byte-iri ɗaya da abin da maɓallin HTTP zai fitar da Content-Type: application/json da babu middleware na tsarawa.
Shin wannan yana gudana a cikin burauzarki?
Eh. Layin samarwa na rage tsarkakakkiyar JSON.parse + JSON.stringify ce da ke gudana a cikin taba burauzarka. Ba a loda komi ba, babu ma'aikacin sabis yana wakiltar shigarwar ka, kuma shafin yana yin buƙatun cibiyar sadarwa sifili don mataki na rage da kansa. Zirga-zirga ta waje ita ce kaddarorin loda-shafi na daidai (CSS, fonts, analytics) kawai — JSON ɗinka ba ya taɓa Ultim8Soft.
Me ya sa rage JSON?
JSON da aka rage yana bincike zuwa ƙima guda ɗaya kamar tushe da aka buga da kyau amma yana da ƙanƙanta a kan waya da a adana. Nauyin mafi ƙanƙanta na nufin kuɗin fitar CDN mafi ƙanƙanta, sauke wayar hannu mafi sauri, ƙarancin matsin ƙwaƙwalwa a cikin ma'aikata na sabis, da daidaituwa mafi ƙanƙanta a cikin jakar da aka gyara na jwt payloads, sifofin HTML da aka haɗa na data-*, da adanawa na localStorage. Don API masu yawan aiki adanawa na baiti suna haɓaka — raguwa ta kashi 30 a kan ƙarshen 1 GB/rana yana adana kusan 9 GB kowace wata.
Shin rage yana rasa bayanai?
A'a. Rage na JSON yana cire sarari kawai da yake a wajen rubutun kirtani — sarari, tabs, da layin sabon da fasaha ta riga ta ware a matsayin maras muhimmanci. Ana adana kowane makulli, ƙima, lamba, jerin kuɓuta, da harafi na kirtani byte-zuwa-byte. Fitarwa tana bincike zuwa ƙima wanda shine deepEqual ga shigarwa. Shingen ado shine abin da ya ɓace kawai.
Menene bambancin tsakanin mai tsarawa da mai rage?
Abokin JSON Formatter yana tafiya a alkibla ta gaba: yana fadada sarari don mutane su iya karanta tsarin da aka haɗa. Mai rage yana cirewa wannan sarari baya don sufuri da adana. Kayan aikin biyu suna kishiya — tafiya-zuwa-gida ta takarda na JSON ta Formatter → Minifier yana samar da ƙirtanin byte guda ɗaya da ka fara da shi a cikin mai rage, saboda dukansu suna aiki a kan ƙima da aka bincike, ba a kan markup mai ado ba.
Wannan mai rage JSON yana amfani da parser guda ɗaya da Node.js, Deno, ko lokacin burauzarka ke amfani da shi kuma yana samar da fitarwa wanda byte-iri ɗaya da abin da maɓallin HTTP mai sauƙi zai fitar. Liƙa duk JSON a sama, kwafi fitarwa, ko sauke shi a matsayin .min.json.