summaryrefslogtreecommitdiffhomepage
path: root/uk-ua/json-ua.html.markdown
blob: 603d7c14c58f1779558b70af38cf48e9cc700574 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
---
language: json
filename: learnjson-ua.json
contributors:
  - ["Anna Harren", "https://github.com/iirelu"]
  - ["Marco Scannadinari", "https://github.com/marcoms"]
translators:
  - ["Ehreshi Ivan", "https://github.com/IvanEh"]
  - ["Serhii Maksymchuk", "https://github.com/Serg-Maximchuk"]
lang: uk-ua
---

JSON - це надзвичайно простий формат обміну даними. Згідно з [json.org](http://json.org), для людей він легкий в написанні і читанні, а для комп’ютерів в розборі та генерації.

JSON підтримує наступні структури даних:

* Колекція пар ключ/значення (`{ "ключ": "значення" }`). У різних мовах програмування реалізується як об’єкт, запис, структура, словник, хеш-таблиця, іменований список або асоціативний масив.
* Впорядкований список значень (`[ "елемент0", "елемент1" ]`). У різних мовах програмування реалізується як масив, вектор, список або послідовність.
* Рядки: `"привіт"`, `"\"Лапки\""`, `"\u0abe"`, `"Новий рядок.\n"`
* Числа: `23`, `0.11`, `12e10`, `3.141e-10`, `1.23e+4`
* Інші: `true`, `false`, `null`

JSON в чистій формі не містить коментарів, але більшість парсерів підтримують коментарі в C-стилі (`//`, `/* */`). Деякі парсери також не звертають уваги на кому після останнього поля, але їх варто уникати для кращої сумісності.

```json
{
  "ключ": "значення",
  
  "ключі": "завжди мають бути обгорнуті в подвійні лапки",
  "числа": 0,
  "рядки": "Пρивіт, світe. Допускаються всі unicode-символи разом із \"екрануванням\".",
  "логічний тип": true,
  "нічого": null,

  "велике число": 1.2e+100,

  "об’єкти": {
    "коментар": "Більшість ваших структур будуть складатися з об’єктів",

    "масив": [0, 1, 2, 3, "масиви можуть містити будь-які типи", 5],

    "інший об’єкт": {
      "коментар": "Об’єкти можуть містити інші об’єкти. Це дуже корисно."
    }
  },

  "безглуздя": [
    {
      "джерело калію": ["банани"]
    },
    [
      [1, 0, 0, 0],
      [0, 1, 0, 0],
      [0, 0, 1, "нео"],
      [0, 0, 0, 1]
    ]
  ],
  
  "альтернативний стиль": {
    "коментар": "Гляньте!"
  , "позиція коми": "неважлива, коректно якщо вона знаходиться перед наступним полем"
  , "інший коментар": "класно"
  },

  "Це було не довго": "І ви впорались! Тепер ви знаєте все про JSON."
}

Одиничний масив значень теж є правильним JSON

[1, 2, 3, "text", true]
```