json logo

Uvod v JSON


العربية Български 中文 Český Dansk Nederlands English Esperanto Français Deutsch Ελληνικά עברית Magyar Indonesia
Italiano 日本 한국어 فارسی Polski Português Română Русский Српско-хрватски Slovenščina Español Svenska Türkçe Tiếng Việt

ECMA-404 The JSON Data Interchange Standard.

json
    element

value
    object
    array
    string
    number
    "true"
    "false"
    "null"

object
    '{' ws '}'
    '{' members '}'

members
    member
    member ',' members

member
    ws string ws ':' element

array
    '[' ws ']'
    '[' elements ']'

elements
    element
    element ',' elements

element
    ws value ws

string
    '"' characters '"'
characters
    ""
    character characters
character
    '0020' . '10ffff' - '"' - '\'
    '\' escape
escape
    '"'
    '\'
    '/'
    'b'
    'n'
    'r'
    't'
    'u' hex hex hex hex

hex
    digit
    'A' . 'F'
    'a' . 'f'

number
    int frac exp

int
    digit
    onenine digits
    '-' digit
    '-' onenine digits

digits
    digit
    digit digits

digit
    '0'
    onenine

onenine
    '1' . '9'

frac
    ""
    '.' digits

exp
    ""
    'E' sign digits
    'e' sign digits

sign
    ""
    '+'
    '-'

ws
    ""
    '0009' ws
    '000a' ws
    '000d' ws
    '0020' ws

JSON (JavaScript Object Notation) je preprost format za izmenjavo podatkov. Je enostaven za ljudi za branje in pisanje in tudi za računalnike za razbiranje in generiranje. Temelji na podmnožici programskega jezika JavaScript, Standard ECMA-262, tretja izdaja - december 1999. JSON je tekstoven format, ki je v celoti neodvisen od jezika, a uporablja konvencije znane programerjem v C-jevskih jezikih, vključujoč C, C++, C#, Javo, JavaScript, Perl, Python in mnoge druge. Zaradi teh lastnosti je JSON idealen jezik za izmenjavo podatkov.

JSON temelji na dveh strukturah:

To sta univerzalni podatkovni strukturi. Praktično vsi moderni programski jeziki ju poznajo v taki ali drugačni obliki. Smiselno je, da tudi jezik za izmenjavo podatkov, ki je neodvisen od programskega jezika, temelji na teh dveh strukturah.

V JSON-u sta organizirani takole:

Objekt je neurejena množica parov ime/vrednost. Objekt se začne z znakom { (zaviti oklepaj) in konča z } (zaviti zaklepaj). Vsakemu imenu sledi : (dvopičje), pari ime/vrednost pa so med seboj ločeni z znakom , (vejica).

Seznam je urejena zbirka vrednosti. Seznam se začne z znakom [ (oglati oklepaj) in konča z ] (oglati zaklepaj). Vrednosti so med seboj ločene z znakom , (vejica).

Vrednost je lahko niz v dvojnih narekovajih, število, true, false, null, objekt ali seznam. Te strukture so lahko gnezdene.

Niz je zaporedje nič ali več Unicode znakov obdanih z dvojnima narekovajema, možne so tudi ubežne sekvence. Znak je predstavljen z enoznakovnim nizom. Niz je zelo podoben nizu v jezikih C ali Java.

Število je prav táko, kakršno je število v C-ju ali Javi, samo da ne pozna osmiškega in šestnajstiškega zapisa.

Prazen prostor se lahko pojavi poljubno med dvema simboloma. Razen nekaj detajlov kodiranja je jezik s tem popolnoma določen.