json logo

JSON bevezető


العربية Български 中文 Český Nederlandse Dansk 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.