JSON-handledning: Lär dig med ett enkelt exempel

⚡ Smart sammanfattning

JSON, förkortning för JavaScript Object Notation är ett lätt, läsbart format för att lagra och utbyta strukturerad data mellan servrar och applikationer. Den här resursen förklarar dess syntax, datatyper, verkliga applikationer och skillnaderna som skiljer det från XML.

  • 🔑 Kärndefinition: JSON lagrar information som namn/värde-par och ordnade arrayer, med hjälp av klammerparenteser för objekt och hakparenteser för arrayer.
  • 🧩 Datatyper som stöds: Behärska de sex JSON-datatyperna – sträng, tal, boolesk, null, objekt och array – för att modellera nästan vilken struktur som helst.
  • Varför team använder det: JSON tolkas direkt i JavaSkript, fungerar i alla webbläsare och integreras med de flesta backend-tekniker och REST API:er.
  • 🔄 JSON kontra XML: Jämfört med XML är JSON typat, mer läsbart och snabbare att serialisera, även om det saknar visningsmöjligheter för markup.
  • 🛠️ Praktiska verktyg: Validera, formatera och minimera kod med verktyg som JSONLint, JSON Editor Online och JSON Formatter före distribution.

JSON handledning

Vad är JSON?

JSON är ett filformat som används för att lagra information på ett organiserat och lättillgängligt sätt. Dess fullständiga form är JavaSkriptobjektnotation. Den erbjuder en läsbar samling data som kan nås logiskt. Dess filnamnstillägg för skriven programmeringskod är .json. Internetmedietypen för JSON är application/json, och dess enhetliga typidentifierare är public.json.

Nu när definitionen är tydlig förklarar nästa avsnitt varför utvecklare väljer JSON framför andra dataformat.

Varför använda JSON?

Här är de viktiga fördelarna/fördelarna med att använda JSON:

  • Ge support för alla webbläsare
  • Lätt att läsa och skriva
  • Enkel syntax
  • Du kan analysera inbyggt JavaSkript med eval()-funktionen
  • Lätt att skapa och manipulera
  • Stöds av alla större JavaSkriptramar
  • Stöds av de flesta backend-tekniker
  • JSON känns igen inbyggt av JavaScript
  • Det tillåter dig att transmit och serialisera strukturerad data med hjälp av en nätverksanslutning.
  • Du kan använda den med moderna programmeringsspråk.
  • JSON är text som kan konverteras till vilket objekt som helst JavaSkriv in i JSON och skicka denna JSON till servern.

Historien om JSON

Historien om JSON
JSON handledning

Här är viktiga landmärken som utgör historien om JSON:

  • Douglas Crockford specificerade JSON-formatet i början av 2000-talet.
  • Den officiella webbplatsen lanserades 2002.
  • I december 2005, Yahoo! börjar erbjuda några av sina webbtjänster i JSON.
  • JSON blev en internationell ECMA-standard 2013.
  • Den mest uppdaterade JSON-formatstandarden publicerades 2017.

Utöver denna tidslinje erbjuder JSON också en uppsättning praktiska funktioner som förklarar dess bestående popularitet.

Funktioner i JSON

Lätt att använda – JSON API erbjuder fasad på hög nivå, vilket hjälper dig att förenkla vanliga användningsfall.

Prestanda – JSON är ganska snabb då den förbrukar mycket mindre minnesutrymme, vilket är särskilt lämpligt för grafer eller system med stora objekt.

Gratis verktyg – JSON-biblioteket är öppen källkod och gratis att använda.

Kräver inte att skapa kartaping – Jackson API tillhandahåller standardkartaping för att många objekt ska serialiseras.

Rengör JSON – Skapar rent och kompatibelt JSON-resultat som är lätt att läsa.

Dependency – JSON-biblioteket kräver inget annat bibliotek för bearbetning.

Regler för JSON-syntax

Regler för JSON-syntax är:

  • Data bör vara i namn/värdepar
  • Data ska separeras med kommatecken
  • Lockiga hängslen ska hålla föremål
  • Hakparenteser håller arrayer

Datatyper i JSON

Med syntaxreglerna etablerade listar följande tabell de viktiga datatyper som används i JSON:

Data typ BESKRIVNING
Antal Det inkluderar reella tal, heltal eller ett flytande tal
Sträng Den består av vilken text eller Unicode som helst med dubbla citat med omvänt snedstreck
Boolean Den booleska datatypen representerar antingen True eller False värden
Null Null-värdet anger att den associerade variabeln inte har något värde
Ändamålet Det är en samling nyckel-värdepar och alltid separerade med kommatecken och omgivna av parenteser.
array Det är en ordnad sekvens av värden separerade.

Antal

  • Numret är ett flyttalformat med dubbel precision som beror på dess implementeringsmetod.
  • I JSON kan du inte använda hexadecimala och oktala format.

Följande tabell visar nummertyper:

Typ BESKRIVNING
Heltal Nummer 1-9 och 0. Både positiva och negativa tal.
Fraktion Bråk som 3
Exponent Exponent som e, e+

Syntax:

var json-object-name = { string : number_value,......}

Exempel:

var obj = {salary: 2600}

Sträng

Det är en serie Unicode-tecken i dubbelcitat och har ett bakåtsnedstreck (esca).ping.

Följande tabell visar olika strängtyper:

Typ BESKRIVNING
* Använd för dubbla citattecken typing
/ Använd för solidus
\ Använd för omvänd solidus
B Använd för att lägga till backsteg
F Från foder
N För att skapa en ny rad
R Används för returtransport
T För att visa horisontell flik
U Hexadecimala siffror

Syntax:

var json-object-name = { string : "string value",…..}

Exempel:

var obj = {name: 'Andy'}

Boolean

Den lagrar endast sanna eller falska värden.

Syntax:

var json-object-name = {string : true/false, …..}

Exempel:

var obj = {active: 'true'}

array

  • Det är en ordnad samling av värden.
  • Du bör använda en array när nyckelnamnen är sekventiella heltal.
  • Den ska omges av hakparenteser som ska separeras med ',' (komma)

Syntax:

[value, .......]

Exempel:

Visar en array som lagrar flera objekt:

{
   "eBooks":[
      {
         "language":"Pascal",
         "edition":"third"
      },
      {
         "language":"Python",
         "edition":"four"
      },
      {
         "language":"SQL",
         "edition":"second"
      }
   ]
}

JSON-objekt

A JSON-objekt är en enhet i JSON som omges av hakparenteser. Det skrivs i den oordnade uppsättningen namn- och värdepar där namnet ska följas av ":" (kolon), och namn/värdeparen måste separeras med "," (komma). Det kan användas när nyckelnamn är godtyckliga strängar.

Syntax:

{ string :  value, ….. }

Exempel:

{
"id": 110,
"language": "Python",
"price": 1900,
}

blank

Du kan infoga blanksteg mellan ett par tokens.

Exempel:

Syntax:

{string:"    ",….}

Exempel:

var a = " Alex"; var b = "Steve";

Exempel på JSON

Det givna kodexemplet definierar hur man använder JSON för att lagra information relaterad till programmeringsböcker tillsammans med upplaga och författarens namn.

{
   "book":[
      {
         "id":"444",
         "language":"C",
         "edition":"First",
         "author":"Dennis Ritchie "
      },
      {
         "id":"555",
         "language":"C++",
         "edition":"second",
         "author":" Bjarne Stroustrup "
      }
   ]
}

Låt oss förstå JSON-format med ett annat JSON-filexempel. Här definierar JSON förnamn, efternamn och id för en elev.

{
  "student": [

     {
        "id":"01",
        "name": "Tom",
        "lastname": "Price"
     },

     {
        "id":"02",
        "name": "Nick",
        "lastname": "Thameson"
     }
  ]
}

Tillämpning av JSON

Här är några vanliga tillämpningar av JSON:

  • Hjälper dig att överföra data från en server
  • Exempel på JSON-filformat hjälper till transmit och serialisera alla typer av strukturerad data.
  • Låter dig utföra asynkrona dataanrop utan att behöva göra en siduppdatering
  • Hjälper dig att transmit data mellan en server och webbapplikationer.
  • Det används flitigt för JavaSkriptbaserad applikation, som inkluderar webbläsartillägg och webbplatser.
  • Du kan transmit data mellan servern och webbapplikationen med hjälp av JSON.
  • Vi kan använda JSON med moderna programmeringsspråk.
  • Den används för att skriva JavaSkriptbaserade applikationer som inkluderar webbläsartillägg.
  • Webbtjänster och Restful API:er använder JSON-formatet för att få offentliga data.

Eftersom JSON används så brett jämförs det ofta med XML, det format det ofta ersätter.

JSON kontra XML

Här är den främsta skillnaden mellan JSON vs XML

JSON XML
JSON-objektet har en typ XML data är typlösa
JSON-typer: sträng, nummer, array, Boolean All XML-data ska vara sträng
Data är lättillgänglig som JSON-objekt XML-data måste analyseras.
JSON-filer är mer läsbara för människor. XML-filer är mindre läsbara för människor.
JSON stöds av de flesta webbläsare. XML-tolkning i flera webbläsare kan vara knepigt
JSON har inga visningsmöjligheter. XML ger en förmåga att visa data eftersom det är ett märkningsspråk.
Det är enkelt att hämta värde Att hämta värde är svårt
Stöds av många Ajax-verktyg Stöds inte fullt ut av Ajax verktygslåda
Ett helt automatiserat sätt att deserialisera/serialisera JavaManus. Utvecklare måste skriva JavaSkriptkod för att serialisera/avserialisera från XML
Inbyggt stöd för objekt. Objektet måste uttryckas genom konventioner – mestadels missad användning av attribut och element.

JSON Exempel

Nedan är ett enkelt JSON-exempel:

{
  "student": [

     {
        "id":"01",
        "name": "Tom",
        "lastname": "Price"
     },

     {
        "id":"02",
        "name": "Nick",
        "lastname": "Thameson"
     }
  ]
}

XML-exempel

<?xml version="1.0" encoding="UTF-8" ?>
<root>
	<student>
		<id>01</id>
		<name>Tom</name>
		<lastname>Price</lastname>
	</student>
	<student>
		<id>02</id>
		<name>Nick</name>
		<lastname>Thameson</lastname>
	</student>
</root>

Vad är JSON inte?

  • Exempel på JSON-datafil är inte ett dokumentformat.
  • Det är inte ett märkningsspråk.
  • JSON tillhandahåller inte ett allmänt serialiseringsformat.
  • Det är inte återkommande eller cykliska strukturer.
  • Det är inte heller en osynlig struktur.

Nackdelar med JSON

Här är några fördelar med JSON:

  • Inget namnutrymmesstöd, därför dålig utökbarhet
  • Begränsad utvecklings verktyg stödja
  • Inget stöd för formell grammatikdefinition

Populära JSON-verktyg (tillägg)

Här är viktiga JSON-verktyg:

JSONLint:

JSONLint är ett projekt med öppen källkod som används som validerings- och omformateringsverktyg för JSON. Det är ett lättviktigt datautbytesformat. Kopiera och klistra in, skriv direkt eller mata in URL i JSON-valideringsverktyget för att validera din JSON-kod.

Länk: https://jsonlint.com

JSON Editor Online:

JSON Editor Online är ett användbart webbaserat verktyg. Det låter dig redigera, visa och formatera JSON. Den visar dina data sida vid sida i en tydlig, redigerbar kodredigeringsprogram.

Länk: https://jsoneditoronline.org/

JSON Minifier Tool:

Det är ett verktyg som hjälper dig att ta bort blanksteg och ger en JSON-kod som tar minst utrymme.

Länk: https://www.browserling.com/tools/json-minify

JSON till XML-konverterare:

JSON till XML-omvandlare är ett enkelt och effektivt verktyg som hjälper dig att konvertera din JSON-kod.

Länk: https://codebeautify.org/jsontoxml

JSON-formaterare:

JSON-formateraren hjälper dig att lösa problemet genom att formatera JSON-data så att det är lätt att läsa och felsöka av en människa.

Länk: https://jsonformatter.curiousconcept.com/

Vanliga frågor

Nej. JSON är ett datautbytesformat, inte ett programmeringsspråk. Det lagrar och transporterar endast strukturerad data med hjälp av en textbaserad syntax. Programmeringsspråk som JavaManus, Pythonoch Java läsa och skriva JSON.

JSON i sig är vanlig text och säker. Risker uppstår vid parsning av otillförlitlig inmatning, särskilt med den gamla eval()-metoden. Använd en standard JSON-parser, till exempel JSON.parse(), och validera data för att undvika injektionsproblem.

JSON är det textformat som används för att lagra och transmit data. Ett JSON-objekt är en struktur inom det formatet, skriven inom klammerparenteser som namn/värde-par. En komplett JSON-fil kan innehålla många objekt och arrayer.

AI-system använder JSON för att skicka prompter, ta emot svar och utbyta modellparametrar. De flesta API:er för stora språkmodeller accepterar och returnerar JSON, vilket gör det till standardformatet för förfrågningar, strukturerade utdata och konfiguration av träningsdata.

Ja. AI-assistenter kan generera JSON från enkla beskrivningar och kontrollera det för syntaxfel. Många verktyg tillämpar också ett schema, så att utdata förblir giltig och matchar den struktur som en applikation förväntar sig.

Sammanfatta detta inlägg med: