Syntaxe JSON


Obsah

    Zobrazit obsah


Syntaxe JSON je podmnožinou syntaxe JavaScriptu.


Pravidla syntaxe JSON

Syntaxe JSON je odvozena ze syntaxe zápisu objektu JavaScriptu:

  • Data jsou v párech název/hodnota

  • Data jsou oddělena čárkami

  • Kudrnaté závorky drží předměty

  • Hranaté závorky obsahují pole


Data JSON - název a hodnota

Data JSON se zapisují jako páry název/hodnota (neboli páry klíč/hodnota).

Pár název/hodnota se skládá z názvu pole (ve dvojitých uvozovkách), následuje dvojtečka následovaná hodnotou:

Příklad

"name":"John"

JSON názvy vyžadují dvojité uvozovky.


JSON - vyhodnocuje objekty JavaScriptu

Formát JSON je téměř totožný s objekty JavaScriptu.

V JSON musí být klíče řetězce napsané v uvozovkách:

JSON

{"name":"John"}

V JavaScriptu mohou být klíče řetězce, čísla nebo názvy identifikátorů:

JavaScript

{name:"John"}


Hodnoty JSON

V JSON musí být hodnoty jedním z následujících datových typů:

  • řetězec

  • číslo

  • objekt

  • pole

  • booleovský

  • nula

V JavaScriptu mohou být hodnoty všechny výše uvedené plus jakýkoli jiný platný JavaScript výraz, včetně:

  • funkci

  • datum

  • nedefinováno

V JSON musí být hodnoty řetězce zapsány s dvojitými uvozovkami:

JSON

{"name":"John"}

V JavaScriptu můžete psát hodnoty řetězců pomocí dvojitých nebo jednoduchých uvozovek:

JavaScript

{name:'John'}

Objekty JavaScriptu

Protože syntaxe JSON je odvozena od zápisu objektů JavaScriptu, velmi málo navíc pro práci s JSON v rámci JavaScriptu je potřeba software.

Pomocí JavaScriptu můžete vytvořit objekt a přiřadit mu data to, takhle:

Příklad

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

K objektu JavaScriptu můžete přistupovat takto:

Příklad

// returns John
person.name;

Zkuste to sami →

<!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>

Lze k němu přistupovat také takto:

Příklad

// returns John
person["name"];

Zkuste to sami →

<!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 lze upravit takto:

Příklad

 person.name = "Gilbert";

Zkuste to sami →

<!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>

Může být také upraven takto:

Příklad

 person["name"] = "Gilbert";

Zkuste to sami →

<!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>

Později se dozvíte, jak převést objekty JavaScriptu na JSON tutorial.


Pole JavaScriptu jako JSON

Stejným způsobem, jakým lze zapsat objekty JavaScriptu jako JSON, mohou pole JavaScriptu být také zapsán jako JSON.

Více o objektech a polích se dozvíte později v tomto tutoriálu.


Soubory JSON

  • Typ souboru pro soubory JSON je „.json“

  • Typ MIME pro text JSON je "application/json"