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.

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.

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

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
parse
const jsonText = '{"name": "Lisa", "age": 28}'
const person = JSON.parse(jsonText)
console.log(person.name) // Lisa

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.

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