json logo

JSON bevezető


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

object
{}
{ members }
members
pair
pair , members
pair
string : value
array
[]
[ elements ]
elements
value
value , elements
value
string
number
object
array
true
false
null

string
""
" chars "
chars
char
char chars
char
any-Unicode-character-
    except-"-or-\-or-
    control-character
\"
\\
\/
\b
\f
\n
\r
\t
\u four-hex-digits
number
int
int frac
int exp
int frac exp
int
digit
digit1-9 digits
- digit
- digit1-9 digits
frac
. digits
exp
e digits
digits
digit
digit digits
e
e
e+
e-
E
E+
E-

A JSON (JavaScript Object Notation, JavaScript objektumjelölés) emberek számára is olvasható–írható, programozottan pedig könnyen feldolgozható és előállítható, pehelysúlyú adatcsere-formátum. A JSON a JavaScript programozási nyelv (ECMA-262 szabvány harmadik kiadás, 1999. december) egy részén alapul. A JSON noha programozási nyelvtől független szöveg-formátum, a C családú nyelvekben – C, C++, C#, Java, JavaScript, Perl, Python stb. – jártas programozó számára ismert konvenciókhoz igazodik. Ezek a tulajdonságok teszik a JSON-t ideális nyelvvé adatcseréhez.

A JSON-nak két típusú felépítése lehetséges:

Ezek olyan univerzális adatszerkezetek, amiket gyakorlatilag minden programozási nyelv támogat ilyen vagy olyan formában. Ésszerűnek tűnik tehát, hogy az az adatformátum, amelyet programozási nyelvek kommunikációjához kívánunk használni, szintén ezekre a szerkezetekre épüljön.

JSON-ban ezek a szerkezetek az alábbi formákban nyilvánulnak meg:

Az objektum név–érték párok rendezetlen halmaza. Egy objektum { (nyitó kapcsos zárójel)-lel kezdődik és } (záró kapcsos zárójel)-lel zárul. Minden nevet : (kettőspont) követ. A név–érték párok , (vessző)-vel tagoltak.

A tömb értékek rendezett halmaza. A tömb [ (nyitó szögletes zárójel)-lel kezdődik és ] (záró szögletes zárójel)-lel zárul. Az értékeket , (vessző)-vel választjuk el egymástól.

Érték lehet idézőjelek közé írt karakterlánc, szám, logikai igaz, logikai hamis, null, objektum vagy tömb. A struktúrák egymásba ágyazhatók.

A karakterlánc nulla vagy több, idézőjelek közé zárt Unicode karakter, szükség szerint visszaper-jellel kivédve. A karakter egy hosszúságú karakterláncnak felel meg. A karakterlánc nagyban hasonlít a C vagy Java karakterláncaihoz.

A szám a C és Java számaihoz hasonló. A különbség az, hogy oktális és hexadecimális formátum itt nem használható.

White space karakter bármely két JSON elem között megadható. Kivétel néhány kódolási részlet, amely egészében a nyelvet írja le.