Что такое JSON?
JSON (JavaScript Object Notation) — текстовый формат обмена данными, в котором информация записывается парами «ключ — значение». Его понимают все языки программирования, и именно в нём чаще всего отвечают современные API.
Структура простая: объекты в фигурных скобках, списки в квадратных, значения — строки, числа, логические величины или вложенные объекты. Формат одновременно читается человеком и разбирается программой без дополнительных схем.
JSON вытеснил XML как основной формат веб-API: он компактнее, проще и естественно ложится на структуры данных в коде. В AI-разработке в нём же модель возвращает вызовы инструментов при function calling.
Где применяется
JSON встречается далеко за пределами API. В нём хранятся настройки проектов — package.json в Node.js, tsconfig.json, composer.json, — пишутся структурированные логи, описываются инфраструктурные конфигурации и передаются данные между микросервисами.
Базы данных давно принимают его как полноценный тип: PostgreSQL и MySQL умеют хранить JSON в колонке и искать по отдельным полям внутри него. В работе с языковыми моделями JSON — основной способ получить от модели машиночитаемый ответ: именно в нём приходят аргументы вызова инструмента при function calling.
Пример
Ответ API может выглядеть так: {"id": 42, "name": "Анна", "active": true} — три поля с разными типами значений.
{
"order_id": "A-10427",
"paid": true,
"total": 4900,
"customer": {
"name": "Анна",
"city": "Київ"
},
"items": [
{ "sku": "JV-01", "qty": 1 },
{ "sku": "PY-07", "qty": 2 }
]
} Частые вопросы
Чем JSON отличается от XML?
XML описывает данные тегами и допускает атрибуты, схемы и пространства имён — он мощнее, но многословнее. JSON компактнее и читается проще, а его структура напрямую ложится на объекты и массивы в коде. Поэтому веб-API почти полностью перешли на JSON.
Можно ли писать комментарии в JSON?
В стандартном JSON комментариев нет, и строгий разборщик на них ругается. Обходят это по-разному: добавляют поле вроде _comment, переносят настройки в YAML, который комментарии поддерживает, или используют диалект JSONC — его понимают редакторы, но не API.
Чем JSON отличается от объекта JavaScript?
JSON — это текст, объект JavaScript — структура в памяти. В JSON ключи всегда в двойных кавычках, нельзя хранить функции, даты или undefined. Перевод между ними делают функции JSON.parse и JSON.stringify.
Что такое JSON Schema?
Это описание того, каким должен быть документ: какие поля обязательны, какого они типа, в каких границах лежат значения. По схеме автоматически проверяют входящие данные и генерируют документацию. Тот же механизм описывает инструменты, которые вызывает языковая модель.