Skip to content

En introduktion till JSON-filer

JSON står för JavaScript Object Notation och är ett enkelt, textbaserat format för att lagra och utbyta data.
Det används överallt – från webb-API:er till konfigurationsfiler och databaser.

Vad är JSON?

JSON beskriver data med nyckel–värde-par, ungefär som ett JavaScript-objekt.
Det gör det lätt att läsa och skriva både för människor och datorer.

Exempel på JSON-data

{
"name": "Lisa",
"age": 28,
"isStudent": false,
"courses": ["Programmering", "Webbutveckling", "Databaser"],
"adress": {
"street": "Exempelgatan 12",
"city": "Göteborg"
}
}

Regler för JSON

Strängar måste vara inom dubbla citattecken (”)

Sista elementet i ett objekt eller en lista får inte följas av ett kommatecken

Data kan vara av typerna:

  • string
  • number
  • boolean
  • array
  • object
  • null

Läsa JSON (parse)

parse
const jsonText = '{"name": "Lisa", "age": 28}'
const person = JSON.parse(jsonText)
console.log(person.namn) // Lisa

Skriva JSON (stringify)

Om vi tar ett annat exempel och utgår ifrån ett JavaScript objekt som vi vill konvertera till en sträng använder vi stringify.

stringify
const data = {
city: "Stockholm",
population: 975000
}
const jsonText = JSON.stringify(data)
console.log(jsonText) // {"city":"Stockholm","population":975000}

Den textsträngen kan lätt sparas till fil eller skickas till en server som hanterar den.

JSON och fetch

När vi använder fetch och hämtar data från en jsonfil behöver vi inte köra JSON.parse() utan det låter vi den inbyggda funktionaliteten i fetch göra åt oss med det inbyggda .json().

.json()
let data = await fetch(`https://url-to-a-file.json`) // Hämta datan
let json = await data.json() // Skapa ett JSON objekt av datan