Посібники

Що таке JSON? Простий посібник з прикладами

JSON (JavaScript Object Notation) — це простий текстовий формат для запису структурованих даних, наприклад клієнта, замовлення чи списку товарів, у вигляді пар назв і значень. Його легко читати людям і легко створювати та розбирати програмам. Коли застосунки й сервіси обмінюються даними через вебмережу, JSON — найпоширеніший формат.

Чому JSON важливий, коли ви створюєте з ШІ

З JSON ви стикаєтеся постійно, навіть якщо ніколи не пишете код:

  • API. Коли екрани вашого застосунку завантажують дані з бекенду або ваш бекенд викликає сервіс оплати, пошти чи ШІ, дані зазвичай передаються у форматі JSON. Див. що таке API.
  • Файли налаштувань. Багато файлів конфігурації проєкту є JSON, наприклад package.json, де перелічено залежності JavaScript-проєкту.
  • Бази даних. Postgres може зберігати JSON у стовпці (тип jsonb) для даних, які не вкладаються в охайні рядки й стовпці. Див. що таке Postgres.
  • Вивід ШІ. Коли потрібно, щоб модель ШІ повернула щось, із чим може працювати програма — список тегів, витягнуті поля рахунку, — зазвичай просять JSON.
  • Повідомлення про помилки та журнали. Багато помилок надходять у JSON, і їх читання — часто найшвидший спосіб дізнатися, що пішло не так.

Вміння читати JSON дає змогу перевірити, що насправді отримав ваш застосунок, помітити відсутнє поле і точно описати проблему вашому конструктору ШІ.

Повсякденна аналогія

Уявіть паперову анкету: Ім'я: ____, Телефон: ____, Розсилка: ☐ так ☐ ні. Кожен запис — це підпис і значення поруч. JSON — це така анкета, записана текстом у суворій структурі, яку комп'ютер може прочитати без здогадок. І, як в анкетах, у JSON можуть бути розділи всередині розділів (блок адреси з вулицею, містом і поштовим індексом) та списки (кілька номерів телефонів).

Як виглядає JSON

Ось одне бронювання у форматі JSON:

{
  "id": 5001,
  "customer": "Lena Park",
  "service": "Haircut",
  "startsAt": "2026-10-03T14:00:00Z",
  "price": 35.5,
  "paid": false,
  "notes": null,
  "extras": ["beard trim", "hot towel"],
  "contact": {
    "email": "lena@example.com",
    "phone": "+44 20 7946 0000"
  }
}

Як це читати:

  • Фігурні дужки { } огортають об'єкт — набір пар назва/значення.
  • Кожна пара має вигляд "назва": значення і відокремлюється комами.
  • Квадратні дужки [ ] огортають масив — впорядкований список.
  • Об'єкти й масиви можуть бути вкладені один в одного, як contact і extras.

Шість видів значень

У JSON лише шість типів значень. Саме цей короткий список — одна з причин, чому він працює всюди.

ТипПрикладПримітки
Рядок (текст)"Lena Park"Завжди в подвійних лапках
Число35.5, -2, 1e6Без лапок; без символів валют
Логічне (boolean)true, falseМалими літерами, без лапок
Nullnull«Немає значення»
Об'єкт{ "city": "Leeds" }Іменовані значення
Масив[1, 2, 3]Упорядкований список; елементи можуть бути будь-якого типу

Типу дати немає. Дати записуються як рядки, зазвичай у форматі ISO 8601, як показано вище (2026-10-03T14:00:00Z, де Z означає UTC). Домовленість про цей формат запобігає цілій категорії помилок із часовими поясами.

Суворі правила (звідки беруться помилки)

JSON менш поблажливий, ніж здається. Усе нижче — недійсний JSON:

{ name: "Lena" }            ← ключ без подвійних лапок
{ 'name': 'Lena' }          ← одинарні лапки
{ "a": 1, "b": 2, }         ← кома після останнього елемента
{ "a": 1 "b": 2 }           ← пропущена кома
{ "a": 1 // comment }       ← коментарі не допускаються

Більшість помилок «Unexpected token», які ви побачите, — це одна з цих. Валідатор або форматувальник JSON покаже точний рядок.

Робочий приклад: JSON у застосунку

Клієнт бронює стрижку в застосунку салону. Ось де з'являється JSON:

  1. Форма бронювання надсилає бекенду застосунку таке:
{ "service": "Haircut", "startsAt": "2026-10-03T14:00:00Z", "name": "Lena Park" }
  1. Бекенд зберігає бронювання в базі даних і відповідає статусом 201 Created та таким:
{ "id": 5001, "status": "confirmed" }
  1. Якщо цей час уже зайнятий, він може натомість відповісти статусом 409 Conflict і таким:
{ "error": "slot_taken", "message": "That time was just booked. Please pick another." }

Сторінка читає status або error і показує потрібне повідомлення. Якщо замість цього сторінка показала порожній екран, відкриття інструментів розробника в браузері (вкладка Network) покаже саме цей JSON — часто це найшвидша підказка, що пішло не так.

Ключові терміни

ТермінЗначення
КлючНазва в парі назва/значення, наприклад "email".
Parse (розбір)Перетворити текст JSON на дані, з якими може працювати програма.
Серіалізація / stringifyПеретворити дані на текст JSON для надсилання чи зберігання.
Payload (корисне навантаження)Дані, що надсилаються в запиті або відповіді.
Схема (schema)Опис очікуваної структури даних — які поля, які типи. JSON Schema — стандартний спосіб її записати.
JSONBДвійковий тип стовпця JSON у Postgres, для якого можна створювати індекси та запити.
NDJSON / JSON LinesОдин об'єкт JSON на рядок, поширений для журналів і потокової передачі.

Поширені хибні уявлення

  • «JSON — це JavaScript». Він походить із синтаксису JavaScript, але не прив'язаний до мови; Python, Java, C#, Go та інші читають його.
  • «Числа в лапках — це нормально». "35" — це рядок, а не число. Змішування призводить до помилок, наприклад "35" + "5" стає "355". Гроші часто краще зберігати як цілі центи (3550), щоб уникнути проблем з округленням.
  • «JSON безпечний, бо це просто дані». JSON може містити що завгодно, зокрема секрети. Не кладіть API-ключі в JSON, який надсилається в браузер.
  • «Зберігайте все в стовпці JSON». Це зручно для гнучких додаткових полів, але дані, за якими ви шукаєте, фільтруєте чи об'єднуєте, зазвичай мають бути у звичайних стовпцях.
  • «ШІ завжди повертає валідний JSON». Моделі можуть додати зайвий текст або порушити формат. Багато провайдерів пропонують режим структурованого виводу, але ваш код усе одно має перевіряти відповідь.

Що попросити у вашого конструктора ШІ

  • «Покажи приклад JSON, який повертає цей endpoint.»
  • «Повертай помилки у форматі JSON з кодом error і зрозумілим для людини message.»
  • «Зберігай дати як рядки ISO 8601 у UTC і перетворюй на місцевий час лише на екрані.»
  • «Зберігай ціни як цілі центи.»
  • «Перевіряй вхідний JSON на сервері й відхиляй запити з відсутніми або неправильного типу полями.»
  • «Під час виклику моделі ШІ проси JSON саме в такій формі і перевіряй його перед використанням.»

JSON у Mythex

У Mythex не потрібно писати JSON вручну: ви описуєте, що хочете, а агент пише код, який його надсилає й читає. Проте корисно його розпізнавати: коли щось ламається, вставка помилки JSON у чат дає агентові точну підказку. У рецепті бекенд REST API у документації з самого початку просять «зрозумілі помилки JSON», а рецепт інтеграція з будь-яким API розповідає про виклики зовнішніх сервісів. Для ширшої картини див. REST чи GraphQL і як налагодити застосунок, створений з ШІ.

Запитання

Що таке JSON простими словами?

JSON (JavaScript Object Notation) — це текстовий формат для запису структурованих даних у вигляді пар «назва» і «значення», наприклад "name": "Lena". Майже кожен веб-API використовує його, щоб надсилати дані туди й назад, а багато застосунків зберігають у ньому налаштування та дані.

JSON — це мова програмування?

Ні. JSON — це формат даних, а не мова. Сам по собі він нічого не робить: лише описує дані. Хоча він походить із JavaScript, практично кожна мова програмування вміє його читати й записувати.

У чому різниця між JSON і об'єктом JavaScript?

Вони схожі, але JSON суворіший. У JSON кожен ключ має бути в подвійних лапках, рядки теж пишуться в подвійних лапках, коментарів немає, коми після останнього елемента не допускаються, а значення обмежені рядками, числами, true, false, null, об'єктами та масивами.

Чому мій JSON визнано недійсним?

Типові причини: кома після останнього елемента, одинарні лапки замість подвійних, пропущена кома між елементами, незакрита дужка або коментар. Вставте текст у валідатор JSON — він покаже рядок із помилкою.

Mythex · Pricing · Створюйте що завгодно з ШІ · Шаблони сайтів і застосунків · Порівняння Mythex · Глосарій створення застосунків за допомогою ШІ · Безкоштовні інструменти для створення застосунків за допомогою ШІ · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)