JSON встречается всюду в программировании: на нём приложения обмениваются данными с серверами, хранят настройки и передают информацию через API. Формат простой и логичный — разберём его на понятных примерах.
Что это такое
JSON (JavaScript Object Notation) — это текстовый формат для хранения и передачи данных. Он устроен как пары «ключ: значение», понятные и человеку, и программе. Именно в JSON приложения обычно получают ответы от серверов: список товаров, данные профиля, погоду и так далее.
Как он выглядит
{
"name": "Анна",
"age": 30,
"isAdmin": false,
"hobbies": ["чтение", "спорт"]
}
В фигурных скобках — объект с полями. Слева от двоеточия ключ (в кавычках), справа — значение. Значения бывают строками, числами, true/false, списками (в квадратных скобках) и вложенными объектами.
Почему он так популярен
- Читаемый — понятен человеку с первого взгляда.
- Компактный и простой — легко передавать по сети.
- Универсальный — понимается почти всеми языками программирования, не только JavaScript.
Поэтому JSON стал стандартом обмена данными между приложениями и в API.
Где вы с ним сталкиваетесь
Когда приложение запрашивает данные с сервера, ответ почти всегда приходит в JSON, а программа затем превращает его в удобные объекты. Настройки многих программ тоже хранятся в JSON-файлах. Даже если вы не программист, но настраиваете что-то через конфиг, вы, вероятно, редактируете JSON.
Частые заблуждения
- «JSON нужен только для JavaScript». Нет, его читают почти все языки.
- «Это язык программирования». Нет, это формат данных, а не код.
- «Кавычки необязательны». Ключи и строки должны быть в двойных кавычках.
Что запомнить
JSON — простой текстовый формат обмена данными в виде пар «ключ: значение». Он читаем, компактен и понятен почти всем языкам, поэтому стал стандартом для API и настроек. Соблюдайте синтаксис: двойные кавычки, запятые между элементами и никакой запятой после последнего — иначе JSON станет невалидным.
Коротко: вопросы и ответы
JSON — это язык программирования? Нет, это формат для хранения и передачи данных.
Только для JavaScript? Нет, с JSON работают практически все языки.
Почему «невалидный JSON»? Чаще всего из-за лишней/пропущенной запятой или кавычек.
JSON и другие форматы
Раньше для обмена данными часто использовали XML — он тоже структурирован, но многословнее и тяжелее читается. JSON вытеснил его в вебе за компактность и простоту. Для настроек иногда применяют более «человечный» YAML, но JSON остаётся самым универсальным для передачи данных между программами.
Как проверить, правильный ли JSON? Есть онлайн-валидаторы и проверки в редакторах кода — они укажут строку с ошибкой.
Можно ли писать комментарии в JSON? В стандартном JSON комментарии не поддерживаются.
Комментарии