Vad är JSON?

JSON står för JavaScript Object Notation, är ett lättformat för utbyte och lagring av data. Datalagringsformatet används mest i REST API-samtal (REST-begäran och svaret) och i NoSQL-databaser som MongoDB. JavaScript Object Notation som format är mycket rakt fram, självbeskrivande och intuitivt.

Definition

Det är detsamma som det format i vilket JavaScript-objekten skapas, men i JSON är det bara textmeddelanden. Läsa och generera JavaScript Object Notation kan göras med valfri programmeringsspråk. Vi kanske måste följa följande syntaxregler -

  1. Uppgifterna finns alltid i nyckel- / värdepar.
  2. Varje dataobjekt är separerat med ett komma.
  3. Föremålen hålls i de lockiga hängslen (blommarkonsolen som den här '()')
  4. Matriserna hålls i fyrkantiga parenteser.

JSON-objekt

Ett typiskt objekt är följande

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

I ovanstående exempel är "Namn", "Ockupation", "Besökta platser" nycklarna och "'Alex", "Lärare" och matrisen ("San Francisco", "Kalifornien", "Houston") är värdena för respektive nycklar och hela informationen som är bifogade i blomman parentes utgör ett JavaScript Object Notation Object. Värdena kan vara en sträng, ett annat objekt, ett booleskt, noll, ett nummer.
Objekten kan också häckas och också vara i form av matriser.

Exempel:

1. Kapslade objekt

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

De yttre lockiga hängslen bildar det primära JSON-objektet som häckar till ett annat JSON-objekt med nyckeln 'Name' följt av data i de inre lockiga hängslen. Låt oss sedan se matrisen av objekt.

2. En rad objekt

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

Som ni ser, bildar de yttre lockiga hängslen det primära JSON-dataobjektet och det finns ett fyrkantigt fästepar som omsluter en uppsättning objekt som är matrisen med JSON-objekt.

3. Datatyper

Värden måste ha en av följande datatyper.

  • strängar:

(“name”: “Johnny”)

  • Siffra:

(“age”: 21)

  • Objekt:

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

Obs - Objekten i JSON-objekten som är kapslade måste också följa samma syntaxregler som för ett normalt JSON-objekt.

  • Boolean:

(“sale”: true)

4. JSON-analys

Låt oss betrakta Python som exempel på programmeringsspråk och se hur vi hanterar dataobjekten.

1. import json
# json är modulen i python för att hantera dess dataobjekt

2. string_a = "(" namn ":" Alex ", " ålder ":" 22 ", " yrke ":" Lärare ")"
# låt mig förklara exemplet på strängaformat med syntaxreglerna

3. json_object = json.loads (string_a)
# nu har json_object strängen_a som JSON-objektet och nyckelvärdena kan hänvisas till följande

print ("Namnet är", json_object ("namn"))
print (json_object ("namn", "'s ålder är", json_object (' ålder ')))

Så i JSON-parsing med python tar JSON-objekten formen av en ordbok och tangenterna kommer att hänvisas till i indexet som nämns i exemplet ovan.

Låt oss nu se hur vi kan analysera JSON-objekten från en fil i Python

1. import json
# json är modulen i python för att hantera dess objekt

2. file_handler = open ('json_data_file.json', 'r')
# open är funktionen för att öppna en fil i python och json-filerna lagras med tillägget
# .json som i detta exempel öppnas i läsläge 'r'

3. json_object = json.load (file_handler)
# json.load () är den funktion som accepterar filhanteraren för json-filen och läser dess data
# objekt från filen
print ("Namnet är", json_object ("namn"))
print (json_object ("namn", "'s ålder är", json_object (' ålder ')))

Obs - Du kan antingen läsa filen, extrahera innehållet som sträng och använda metoden json.loads () för att få json-objektet eller direkt använda lastmetoden för att extrahera passera filhanteraren som parameter

Utbyte av dataobjekt

Nästan alla programmeringsspråk drivs för att generera och hantera ordböcker eller hash eller associerande matriser. Så de data som behöver utbytas mellan klienterna och servrarna måste skrivas till ett av dessa former beroende på vilket programmeringsspråk som används.

JSON vs XML

Traditionellt var protokollet som användes för att utbyta data mellan klienten och servern SOAP (Simple Object Access Protocol) som använde XML (Extensible Markup Language). Med införandet av REST (Representative State Protocol) blev användningen av JavaScript Object Notation allmänt känd.

Här är några likheter mellan dem

  1. Båda är intuitiva och lätta att läsa.
  2. Båda kan vara kapslade och hierarkiska.
  3. Båda kan analyseras med ett stort antal språk.
  4. Båda byts ut över webbbegäranden för dataöverföring.

Här är några skillnader mellan dem

  1. Det har inget taggformat.
  2. Det är lagringsoptimalt eftersom det är relativt kortare än XML.
  3. Det är snabbare att läsa och skriva.
  4. Det kan använda matriser medan det inte är enkelt i XML.

nackdelar

Även om vi såg fördelarna är det inte utan nackdelar också. Följande är nackdelarna:

  1. Det är inte helt säkert.
  2. Det är begränsat i termer av de datatyper som stöds.

Hur kunskap om JSON hjälper dig i din karriär?

Det är ett dataformat som används för att utbyta information mellan klienter och servrar. Föreställ dig att om du skulle kunna utveckla ett optimerat schema för datarepresentation som använder färre data för att utbyta stora data är det en stor sak. Hela världen går mot RESTful API-tjänster. Därför hjälper du dig med coola API-tjänster med en hel del med det här språket.

Slutsats

Det är ett av de coola dataformaten för åtkomst, lagring och förståelse av data. Om du letar efter något som är snabbt, lätt för datautbyte kan du alltid se fram emot att använda JavaScript Object Notation.

Rekommenderade artiklar

Detta har varit en guide till Vad är JSON. Här diskuterade vi arbetet med JSON med hjälp av exempel och hur och var det kan hjälpa till i karriärtillväxt. Du kan också gå igenom våra andra föreslagna artiklar för att lära dig mer -

  1. Vad är JavaScript?
  2. Vad är PHP Array?
  3. Vad är SAS?
  4. Vad är designmönster i Java?