JSON ir teksta formāts, ko bieži izmanto datu pārraidei starp dažādām sistēmām, jo tam ir vienkārša struktūra. Tas kodē in­for­mā­ci­ju kā atslēgas-vērtības pārus, kurus var apstrādāt gandrīz jebkura prog­ram­mē­ša­nas valoda. Formāts ir populārs arī tāpēc, ka tas ir viegli lasāms, plaši saderīgs un viegli īs­te­no­jams.

Kas ir JSON?

JSON ir plat­for­mas ne­at­ka­rīgs datu formāts, ko izmanto struk­tu­rē­tu datu pārraidei un uz­gla­bā­ša­nai. Formāts ir cēlies no Ja­vaScript, bet ir pilnīgi ne­at­ka­rīgs, t. i., nav saistīts ar Ja­vaScript. To atbalsta gandrīz visas prog­ram­mē­ša­nas valodas. JSON ir tīrs teksta formāts, kas ir viegli lasāms un rakstāms cilvēkiem un efektīvi ana­li­zē­jams mašīnām.

Daudzos gadījumos iz­strā­dā­tā­ji dod priekš­ro­ku JSON formātam gal­ve­no­kārt tāpēc, ka tas atvieglo datu apmaiņu starp dažādām teh­no­lo­ģi­jām. Piemēram, kad lietotājs iegādājas apģērbu in­ter­net­vei­ka­lā, ievadītā in­for­mā­ci­ja tiek nosūtīta serverim JSON formātā. Serveris apstrādā datus un atbildi nosūta atpakaļ arī JSON formātā, no­dro­ši­not vien­mē­rī­gu datu apmaiņu.

JSON galvenā īpašība ir tā skaidrība: datu formāts izmanto vien­kār­šo­tu un kon­sek­ven­tu notāciju, lai in­for­mā­ci­ju attēlotu precīzi, bet saprotami. Tas balstās arī uz Unicode, kas ļauj viegli apstrādāt star­ptau­tis­kos rakstzī­mes un īpašos simbolus. Tas nozīmē, ka JSON nodrošina vienkāršu un ne­at­ka­rī­gu ri­si­nā­ju­mu modernai tīmekļa un API ko­mu­ni­kā­ci­jai.

Kā darbojas JSON?

JSON do­ku­men­tam ir jāatbilst noteiktam sintaksim: tas vienmēr sākas ar atvērtu izliektu skavotni { un beidzas ar aizvērtu izliektu skavotni }. Izliektās skavotnēs at­se­viš­ķie datu lauki tiek definēti ar vārda-vērtības pāriem. Tie sākas ar vārdu, kam seko kolons : un vērtība. JSON atbalsta dažādus datu tipus, katram no kuriem ir savi atribūti un uzvedība, lai uzglabātu mainīgos. Tie ietver:

  • Objekti: JSON objekta datu tips sastāv no vārdu-vērtību pāriem, kas ietverti izliektās iekavās. Atslēgas ir jābūt unikālām virknēm, kas atdalītas ar komatu.
  • Masīvi: Masīva datu tips pārstāv sakārtotu vērtību kopu. Tām jābūt tipa Object, Array, String, Number, Boolean vai Null.
  • Virknes: JSON virknes bieži izmanto, lai uzglabātu un pārsūtītu teksta datus, piemēram, vārdus vai adreses. Virknes ir ietvertas dubultās pēdiņās ”” un atļauj izmantot visu Unicode rakstzīm­ju klāstu.
  • Boolean: Boolean vērtības var būt true vai false. Tās tiek uz­ska­tī­tas par virknēm, bet netiek ietvertas pēdiņās.
  • Skaitlis: Šis datu tips tiek izmantots, lai uzglabātu skait­lis­kas vērtības dažādiem mērķiem, piemēram, datu analīzei vai ap­rē­ķi­niem. JSON atbalsta gan pozitīvus, gan negatīvus skaitļus, kā arī de­ci­māl­da­ļas.
  • Null: ja mainīgais ir tukšs, to var izteikt, piešķirot tam Null.

Šis piemērs ilustrē JSON datu kopas struktūru:

{ 
    "dataField1": "Value", 
    "dataObject": { 
        "field1": 123, 
        "field2": "Text", 
        "field3Array": ["Value1", "Value2", "Value3", "Value4"] 
    } 
}
json

Kādas ir JSON priekš­ro­cī­bas?

JSON ir ļoti populārs daudzās jomās, pa­tei­co­ties savai vien­kār­šī­bai un efek­ti­vi­tā­tei, kas to padara par daudzu mūsdienu lie­to­jum­prog­ram­mu ie­cie­nī­tā­ko formātu. Turp­mā­ka­jā pārskatā uz­skai­tī­tas galvenās JSON priekš­ro­cī­bas:

  • Viegla un vietu taupoša: JSON novērš ne­va­ja­dzī­gos marķējuma elementus un izmanto tikai dažus struk­tu­rā­los simbolus, samazinot uz­gla­bā­ša­nas prasības un pārraides apjomu.

  • Viegli lasāms: JSON skaidrā sintakse ir saprotama bez īpašām zināšanām. Pat lielāki datu kopumi paliek or­ga­ni­zē­ti, at­vieg­lo­jot kļūdu novēršanu.

  • Plaša atbalsta: ne­at­ka­rī­gi no tā, vai tas ir Ja­vaScript, Python, Java, PHP vai C# – JSON ir at­bal­stīts gandrīz visās prog­ram­mē­ša­nas valodās un vidēs vai tiek no­dro­ši­nāts ar standarta bib­lio­tē­ku palīdzību. Daudzas NoSQL datu bāzes, piemēram, MongoDB vai CouchDB, do­ku­men­tus glabā tieši JSON formātā vai JSON līdzīgā datu formātā, kas samazina kon­ver­tē­ša­nas darbu.

  • Elastīga datu mo­de­lē­ša­na: atbalsts iegultām struk­tū­rām ļauj bez problēmām kartēt sa­rež­ģī­tus un hie­rar­his­kus datu modeļus.

Kādam nolūkam parasti izmanto JSON?

Pa­tei­co­ties savām daudz­pu­sī­ga­jām priekš­ro­cī­bām, JSON datu formāts tiek izmantots praktiski visās prog­ram­ma­tū­ras izstrādes jomās. Klasiskās lietojuma jomas ietver:

  • Datu pārraide starp plat­for­mām: JSON ir ideāls datu apmaiņai starp dažādām sistēmām un prog­ram­mē­ša­nas valodām.
  • Dinamisko JSON datu izveide no lietotāju ie­va­dī­ta­jiem datiem: JSON ir lielisks ri­si­nā­jums, lai struk­tu­rē­tā veidā uzglabātu pagaidu, lietotāju radītu in­for­mā­ci­ju. Piemēram, ir iespējams tieši konvertēt tīmekļa vietnes veidlapu laukus JSON objektā un tos se­ria­li­zēt.
  • Datu kon­fi­gu­rā­ci­ja lie­to­jum­prog­ram­mām: Katrai lie­to­jum­prog­ram­mai ir ne­pie­cie­ša­mi at­bil­sto­ši pie­teik­ša­nās dati, lai izveidotu sa­vie­no­ju­mu ar datu bāzi. Pie­teik­ša­nās dati un žurnāla faila ceļš var tikt norādīts JSON failā, kuru var izmantot visas ie­sais­tī­tās puses.
  • Sarežģītu datu struktūru vien­kār­šo­ša­na: JSON samazina sa­rež­ģī­tus do­ku­men­tus līdz bū­tis­ka­jiem ele­men­tiem un konvertē tos viegli lasāmās struk­tū­rās. Tas palielina datu modeļu pār­ska­tā­mī­bu un padara piekļuvi at­tie­cī­ga­jai in­for­mā­ci­jai vien­kār­šā­ku.
  • Kon­fi­gu­rā­ci­jas faili: JSON do­ku­men­tus ir viegli meklēt un rediģēt, tāpēc šo formātu bieži izmanto kon­fi­gu­rā­ci­jas failiem, īpaši Ja­vaScript eko­sis­tē­mās, piemēram, Node.js.

Kādas ir JSON al­ter­na­tī­vas?

Lai gan JSON formāts daudzos gadījumos tiek uzskatīts par standarta formātu, pastāv arī citi datu formāti, kas konkrētās si­tuā­ci­jās var būt pat pie­mē­ro­tā­ki. Daži no pa­zīs­ta­mā­ka­jiem al­ter­na­tī­va­jiem formātiem ir:

  • XML (Exten­sible Markup Language): Pirms JSON po­pu­la­ri­tā­tes pieauguma XML bija visbiežāk iz­man­to­tais datu se­ria­li­zā­ci­jas formāts. Šis stingri ti­pi­zē­tais un elas­tī­gais teksta formāts var uzglabāt sa­rež­ģī­tas datu struk­tū­ras un metadatus. Formātam ir arī shēmas de­fi­nī­ci­jas (XSD) un transfor­mā­ci­jas (XSLT), bet tas ir grūtāk lasāms nekā JSON.
  • YAML (YAML Ain’t Markup Language): Šis ma­šīnla­sā­mais formāts gal­ve­no­kārt tiek izmantots kon­fi­gu­rā­ci­jas failiem un ir JSON pa­pla­ši­nā­jums, kas atbalsta ko­men­tā­rus. YAML formāts piedāvā skaidru sintaksi, bet tā apstrāde ir sa­rež­ģī­tā­ka un ir tendence rasties sintakses kļūdām.
  • Protobuf (Protocol Buffers): Tas ir binārais datu formāts no Google, kas pazīstams ar savu kompakto izmēru un augsto efek­ti­vi­tā­ti. Tomēr Protobuf prasa shēmas de­fi­nī­ci­jas. Turklāt formāts nav lasāms cilvēkiem, kas var sarežģīt kļūdu novēršanu.
Go to Main Menu