json logo

Въведение в JSON


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

JSON (JavaScript Object Notation) е опростен формат за обмяна на данни, удобен за работа както за хората, така и за компютрите. Той е базиран на едно подмножество на езика за програмиране JavaScript, Standard ECMA-262 3rd Edition - от декември 1999. JSON има текстов формат, напълно независим от реализацията на езика, но използва конвенции, които са познати на програмистите на C-подобни езици, включително C, C++, C#, Java, JavaScript, Perl, Python, и много други. Тези свойства правят JSON идеален език за обмяна на данни.

JSON се състои от две структури:

Това са универсални структури от данни, които се поддържат от всички модерни езици под една или друга форма. Може да се предположи, че формат, подходящ за обмяна на данни между езиците за програмиране, също ще бъде базиран на тези структури.

В JSON, това изглежда по следния начин:

Един обект е неподреден набор от двойки име/стойност. Обекта започва с { (лява фигурна скоба) и завършва с } (дясна фигурна скоба). След всяко име се поставя : (двуеточие), а двойките име/стойност се разделят със , (запетайка).

Един масив е подредена колекция от стойности. Масивът започва с [ (лява квадратна скоба) и завършва с ] (дясна квадратна скоба). Стойностите се разделят чрез , (запетайка).

Една стойност може да бъде стринг в двойни кавички, число, истина (true) или лъжа (false), null, обект или масив. Тези структури могат да бъдат вложени.

Един стринг е колекция от от нула или повече Unicode символи, обграден от двойни кавички, използвайки \ (обратна наклонена черта) като escape символ. Символът се представя чрез низ, съдържащ само един символ. Стрингът е подобен на тези в C или Java.

Числото много наподобява числото в C или Java, с изключение на това, че осмичният и шестнадесетичен формат не се използват.

Между двойките може да бъде вмъквано празно пространство (whitespace). С изключение на някои детайли относно кодирането на символите (encoding), това напълно описва езика.