JSON-syntax


Innehållsförteckning

    Visa innehållsförteckning


JSON-syntaxen är en delmängd av JavaScript-syntaxen.


JSON-syntaxregler

JSON-syntax härleds från JavaScript-objektnotationssyntax:

  • Data är i namn/värdepar

  • Data separeras med kommatecken

  • Lockiga hängslen håller föremål

  • Hakparenteser håller arrayer


JSON-data - ett namn och ett värde

JSON-data skrivs som namn/värdepar (alias nyckel/värdepar).

Ett namn/värdepar består av ett fältnamn (i dubbla citattecken), följt av ett kolon, följt av ett värde:

Exempel

"name":"John"

JSON-namn kräver dubbla citattecken.


JSON - Utvärderar till JavaScript-objekt

JSON-formatet är nästan identiskt med JavaScript-objekt.

I JSON måste nycklar vara strängar, skrivna med dubbla citattecken:

JSON

{"name":"John"}

I JavaScript kan nycklar vara strängar, siffror eller identifieringsnamn:

JavaScript

{name:"John"}


JSON-värden

I JSON måste värden vara en av följande datatyper:

  • ett snöre

  • ett nummer

  • ett objekt

  • en uppsättning

  • en boolesk

  • null

I JavaScript kan värden vara alla ovanstående, plus eventuellt annat giltigt JavaScript uttryck, inklusive:

  • en funktion

  • en dejt

  • odefinierad

I JSON måste strängvärden skrivas med dubbla citattecken:

JSON

{"name":"John"}

I JavaScript kan du skriva strängvärden med dubbla eller enkla citattecken:

JavaScript

{name:'John'}

JavaScript-objekt

Eftersom JSON-syntaxen härrör från JavaScript-objektnotation, mycket lite extra programvara behövs för att fungera med JSON inom JavaScript.

Med JavaScript kan du skapa ett objekt och tilldela data till det, så här:

Exempel

person = {name:"John", age:31, city:"New York"};

Du kan komma åt ett JavaScript-objekt så här:

Exempel

// returns John
person.name;

Prova själv →

<!DOCTYPE html>
<html>
<body>

<h2>Access a JavaScript object</h2>
<p id="demo"></p>

<script>
const myObj = {name:"John", age:30, city:"New York"};
document.getElementById("demo").innerHTML = myObj.name;
</script>

</body>
</html>

Den kan också nås så här:

Exempel

// returns John
person["name"];

Prova själv →

<!DOCTYPE html>
<html>
<body>

<h2>Access a JavaScript object</h2>
<p id="demo"></p>

<script>
const myObj = {name:"John", age:30, city:"New York"};
document.getElementById("demo").innerHTML = myObj["name"];
</script>

</body>
</html>

Data kan ändras så här:

Exempel

 person.name = "Gilbert";

Prova själv →

<!DOCTYPE html>
<html>
<body>

<h2>Modify a JavaScript Object</h2>
<p id="demo"></p>

<script>
const myObj = {name:"John", age:30, city:"New York" };
myObj.name = "Gilbert";
document.getElementById("demo").innerHTML = myObj.name;
</script>

</body>
</html>

Det kan också ändras så här:

Exempel

 person["name"] = "Gilbert";

Prova själv →

<!DOCTYPE html>
<html>
<body>

<h2>Modify a JavaScript Object</h2>
<p id="demo"></p>

<script>
const myObj = {name:"John", age:30, city:"New York"};
myObj["name"] = "Gilbert";
document.getElementById("demo").innerHTML = myObj.name;
</script>

</body>
</html>

Du kommer att lära dig hur du konverterar JavaScript-objekt till JSON senare i detta handledning.


JavaScript-arrayer som JSON

På samma sätt som JavaScript-objekt kan skrivas som JSON, kan JavaScript-matriser även skrivas som JSON.

Du kommer att lära dig mer om objekt och arrayer senare i denna handledning.


JSON-filer

  • Filtypen för JSON-filer är ".json"

  • MIME-typen för JSON-text är "application/json"