JavaScript JSON

JSON er et format til lagring og overførsel af data.

JSON bruges ofte, når data sendes fra server til web-side.

Hvad er JSON?

  • JSON er en forkortelse for JavaScript Object Notation JavaScript Object Notation
  • JSON er et letvægts dataudvekslingsformat
  • JSON er uafhængig af sprog *
  • JSON er "self-documenting" og let at forstå

* JSON's syntaks er inspireret af JavaScript-objektsnotation, men JSON-format er ren tekst. Kode til at læse og generere JSON-data kan skrives i enhver programmeringssprog.

JSON-eksempel

JSON-syntaks definerer en ansættelsesobjekt: en array (objekter) med tre ansættelsesrekorder:

JSON-eksempel

{
"employees":[
    {"firstName":"Bill", "lastName":"Gates"}, 
    {"firstName":"Steve", "lastName":"Jobs"},
    {"firstName":"Alan", "lastName":"Turing"}
]
}

JSON-format evalueres som JavaScript-objekt

JSON-format er syntaktisk identisk med kode til at oprette JavaScript-objekter.

På grund af denne lighed kan JavaScript-programmer nemt konvertere JSON-data til lokale JavaScript-objekter.

JSON-syntaksregler

  • Data er navne/værdipar
  • Data adskilles af kommaer
  • Parentesernes bruges til at gemme objekter
  • Klammernes bruges til at gemme arrayer

JSON-data - navne og værdier

JSON-data skrives som navne/værdipar, ligesom JavaScript-objektets egenskaber.

Navne/værdipar består af (dobbeltanførselstegn i) feltets navn, efterfulgt af et komma, og derefter værdien:

"firstName":"Bill"

JSON-navne skal være i dobbelte anførselstegn. JavaScript-navne behøver ikke det.

JSON objekt

JSON-objekter skrives inden for curly parenteser.

Ligesom JavaScript kan objekter indeholde flere navne/værdier:

{"firstName":"Bill", "lastName":"Gates"}

JSON array

JSON-arrayer skrives i klammer.

Ligesom JavaScript kan en array indeholde objekter:

"employees":[
    {"firstName":"Bill", "lastName":"Gates"}, 
    {"firstName":"Steve", "lastName":"Jobs"}, 
    {"firstName":"Alan", "lastName":"Turing"}
]

I det ovenstående eksempel er objektet "employees" en array. Den indeholder tre objekter.

Hvert objekt repræsenterer en persons en rekord (med navn og efternavn).

Konverter JSON-tekst til JavaScript-objekt

JSON's almindelige brug er at læse data fra en webserver og derefter vise dataene på en webside.

For enkelhedens skyld kan man bruge en streng som input til demonstration.

Først, opret en JavaScript streng med JSON-syntaks:

var text = '{ "employees" : [
'{ "firstName":"Bill" , "lastName":"Gates" },' +
'{ "firstName":"Steve" , "lastName":"Jobs" },' +
'{ "firstName":"Alan" , "lastName":"Turing" } ]}';

Dernæst, brug JavaScript's indbyggede funktion JSON.parse() til at konvertere denne streng til et JavaScript-objekt:

var obj = JSON.parse(text);

Sidst, brug dette nye JavaScript-objekt i din side:

Eksempel

<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML =
obj.employees[1].firstName + " " + obj.employees[1].lastName;
</script> 

Prøv det selv

Du kan prøve det selv på vores JSON-tutorial Læs mere om JSON her.