Hva er JSON?

JSON står for JavaScript Object Notation, er et lett format for utveksling og lagring av data. Formatet for datalagring brukes mest i REST API-anrop (REST-forespørsel og svar) og i NoSQL-databaser som MongoDB. JavaScript Object Notation som format er veldig rett frem, selvbeskrivende og intuitivt.

Definisjon

Det er det samme som formatet der JavaScript-objektene er opprettet, men i JSON er det bare tekstene som tekstene. Lesing og generering av JavaScript Object Notation kan gjøres ved å bruke hvilket som helst programmeringsspråk. Vi må kanskje følge følgende syntaksregler -

  1. Dataene er alltid i nøkkel / verdipar.
  2. Hvert dataobjekt skilles med komma.
  3. Gjenstandene holdes innenfor de krøllete selene (blomsterbeslaget som dette '()')
  4. Arraysene holdes i firkantede parenteser.

JSON objekt

Et typisk objekt er som følger

(
“Name”: “Alex”,
“Occupation”: “Teacher”,
“Places visited”: (“San Francisco”, “California”, “Houston”) )

I eksemplene ovenfor er 'Navn', 'Yrke', 'Besøkte steder' nøklene og '' Alex ', ' Lærer 'og matrisen (' San Francisco ', ' California ', ' Houston ') er verdiene til de respektive nøklene og alle dataene som er lagt inn i blomsterbrakettene, utgjør et JavaScript Object Notation Object. Verdiene kan være en streng, et annet objekt, en boolsk, null, et tall.
Gjenstandene kan også hekke og også være i form av matriser.

eksempler:

1. Hekkede gjenstander

(
“Role”: “Student”,
“Name”: (
“First name”: “Alex”,
“Last name”: “Hill”
)
)

De ytre krøllete seler danner det primære JSON-objektet som hekker til et annet JSON-objekt med nøkkelen 'Navn' etterfulgt av dataene i de indre krøllete selene. Neste, la oss se en rekke objekter.

2. En rekke objekter

(
“Grade”: 6,
“Student names”: (
(
“First name”: “Alex”,
“Last name”: “Hill”
),
(
“First name”: “Neal”,
“Last name”: “Hunter”
),
(
“First name”: “Peter”,
“Last name”: “Jones”
)
) )

Som du ser, de ytre krøllete selene danner det primære JSON-dataobjektet, og det er et firkantet brakettpar som omslutter et sett med objekter som er matrisen av JSON-objekter.

3. Datatyper

Verdiene må ha en av følgende datatyper.

  • Strings:

(“name”: “Johnny”)

  • Nummer:

(“age”: 21)

  • Gjenstand:

(
employee”: (“name”: “John”, “age”: 221)
)

Merk - Objektene i JSON-objektene som er nestet, må også følge de samme syntaksreglene som for et normalt JSON-objekt.

  • boolean:

(“sale”: true)

4. JSON-parsing

La oss se på Python som eksempel på programmeringsspråk og se hvordan vi kan håndtere dataobjektene.

1. import json
# json er modulen i python for å håndtere dataobjekter

2. string_a = "(" navn ":" Alex ", " alder ":" 22 ", " yrke ":" Lærer ")"
# la meg forklare eksempelet på strengformat med syntaksreglene

3. json_object = json.loads (string_a)
# nå har json_object strengen_a som JSON-objektet og nøkkelverdiene kan henvises som følgende

print (“Navnet er”, json_object (“navn”))
print (json_object ("navn", "alder er", json_object ('alder'))

Så i JSON-parsing ved bruk av python, tar JSON-objektene form av en ordbok, og tastene vil bli referert til i indeksen som nevnt i eksemplet ovenfor.

La oss nå se hvordan vi kan analysere JSON-objektene fra en fil i Python

1. import json
# json er modulen i python for å håndtere objekter

2. file_handler = open ('json_data_file.json', 'r')
# open er funksjonen for å åpne en fil i python og json-filene lagres med utvidelsen
# .json som i dette eksempelet åpnes i lesemodus 'r'

3. json_object = json.load (file_handler)
# json.load () er funksjonen som godtar filbehandleren for json-filen og leser dataene
# objekter fra filen
print (“Navnet er”, json_object (“navn”))
print (json_object ("navn", "alder er", json_object ('alder'))

Merk - Du kan enten lese filen, trekke ut innholdet som streng og bruke metoden json.loads () for å få json-objektet eller direkte bruke lastemetoden for å trekke ut passering av filbehandleren som parameter

Utveksling av dataobjekter

Nesten alle programmeringsspråk er drevet til å generere og håndtere ordbøker eller hasjer eller assosiative matriser. Så dataene som må utveksles mellom klientene og serverne, må skrives til et av disse skjemaene, avhengig av hvilket programmeringsspråk som brukes.

JSON vs XML

Tradisjonelt var protokollen som ble brukt til å utveksle data mellom klienten og serveren SOAP (Simple Object Access Protocol) som brukte XML (Extensible Markup Language). Med innføringen av REST (Representative State Protocol) ble bruken av JavaScript Object Notation viden kjent.

Her er noen likheter mellom dem

  1. Begge er intuitive og lette å lese.
  2. Begge kan være nestede og hierarkiske.
  3. Begge kan analyseres ved å bruke et stort utvalg av språk.
  4. Begge blir utvekslet over nettforespørsler om dataoverføring.

Her er noen forskjeller mellom dem

  1. Det har ikke noe tagformat.
  2. Det er lagringsoptimalt da det er relativt kortere enn XML.
  3. Det er raskere å lese og skrive.
  4. Den kan bruke matriser mens det ikke er enkelt i XML.

ulemper

Selv om vi så fordelene, er det ikke blottet for ulemper. Følgende er ulempene:

  1. Det er ikke helt sikkert.
  2. Det er begrenset i form av støttede datatyper.

Hvordan kunnskap angående JSON vil hjelpe deg i din karriere?

Det er et dataformat som brukes til å utveksle informasjon mellom klienter og servere. Se for deg at hvis du kan utvikle et optimalisert skjema for datarepresentasjon som bruker færre data til å utveksle store data, er det en flott ting. Hele verden beveger seg mot RESTful API-tjenester. Derfor vil du ha en god del med dette språket å hjelpe deg med kule API-tjenester.

Konklusjon

Det er et av de kule dataformatene for tilgang, lagring og forståelse av data. Hvis du er ute etter noe som er raskt, lett for datautveksling, kan du alltid se frem til å bruke JavaScript Object Notation.

Anbefalte artikler

Dette har vært en guide til Hva er JSON. Her diskuterte vi arbeidet med JSON ved hjelp av eksempler og hvordan og hvor det kan hjelpe i karrierevekst. Du kan også gå gjennom andre foreslåtte artikler for å lære mer -

  1. Hva er JavaScript?
  2. Hva er PHP Array?
  3. Hva er SAS?
  4. Hva er designmønster i Java?