JSON Validator

Перевірка синтаксису та структури JSON

Спробувати приклад
Працює локально · Безпечно вставляти секрети

Що таке валідація JSON?

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

Валідний JSON
json
{
  "user": "alice",
  "age": 30,
  "active": true,
  "tags": ["admin", "editor"]
}
Невалідний JSON — кінцева кома
json
{
  "user": "alice",
  "age": 30,
}

Навіщо валідувати JSON?

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

📍
Точне розташування помилки
Валідатор не тільки повідомляє, що JSON невалідний, а й визначає точний рядок і стовпець, де виникла помилка, щоб ви могли відразу перейти до проблеми.
Валідація під час введення
Валідація в реальному часі надає миттєвий зворотний зв'язок під час редагування. Ви бачите, як помилки зникають у міру їх виправлення — без необхідності натискати кнопку.
🔍
Розмежування синтаксису і логіки
Валідація JSON виявляє лише синтаксичні помилки. Вона підтверджує, що документ придатний для розбирання, незалежно від того, чи є значення семантично коректними для вашого застосунку.
🔒
Конфіденційність за замовчуванням
Уся валідація виконується у вашому браузері. Облікові дані, API-ключі та чутливі дані ніколи не надсилаються на сервер.

Поширені помилки валідації JSON

Ці чотири помилки становлять переважну більшість невдалих валідацій JSON:

Кінцева кома
Кома після останнього елемента в об'єкті або масиві. Допустима в JavaScript, але суворо заборонена в JSON.
json
{ "a": 1, "b": 2, }
Рядки в одинарних лапках
Одинарні лапки недопустимі в JSON. І ключі, й значення повинні використовувати подвійні лапки.
json
{ 'key': 'value' }
Undefined і NaN
undefined, NaN і Infinity — значення JavaScript, але не валідний JSON. Використовуйте замість них null або числовий рядок.
json
{ "val": undefined }
Ключі без лапок
JSON вимагає, щоб усі ключі об'єкта були рядками в подвійних лапках. Ідентифікатори без лапок, як в об'єктах JavaScript, не допускаються.
json
{ key: "value" }

Поширені сценарії використання

Перевірка контрактів API
Перевіряйте тіла запитів і відповідей щодо очікуваних форм, щоб виявити помилки інтеграції до того, як вони потраплять у продакшн.
QA конфігураційних файлів
Перевіряйте package.json, tsconfig.json та інші конфігураційні файли перед комітом, щоб переконатися, що вони коректно розбираються.
Валідація пайплайну даних
Перевіряйте синтаксичну коректність даних із зовнішніх джерел або завантажень користувачів перед обробкою.
Передстартова перевірка CI/CD
Запускайте валідацію JSON як крок збірки, щоб запобігти розгортанню невалідних конфігураційних файлів.
Навчання та налагодження
Використовуйте валідатор як навчальний інструмент, щоб зрозуміти, чому певні синтаксичні конструкції JSON є або не є валідними.
QA згенерованого JSON
Перевіряйте, що JSON, створений генераторами коду, шаблонами або серіалізаторами, правильно сформований перед використанням.

Часті запитання

У чому різниця між валідацією JSON і валідацією JSON Schema?
Валідація JSON (що робить цей інструмент) перевіряє синтаксис — чи є документ придатним для розбирання JSON. Валідація JSON Schema — окремий крок, що перевіряє відповідність значень визначеній структурі, типам і обмеженням.
Чи є JSON5 або JSONC валідним JSON?
Ні. JSON5 (допускає одинарні лапки, коментарі, кінцеві коми) і JSONC (допускає коментарі) є надмножинами JSON, але не валідним стандартним JSON. Інструмент перевіряє відповідність суворій специфікації JSON (RFC 8259).
Чому мій JSON не розбирається, хоча виглядає правильним?
Найпоширеніші невидимі причини: кінцева кома після останньої властивості, мітка порядку байтів (BOM) на початку файлу або рядок в одинарних лапках. Вставте JSON у валідатор, щоб визначити точне місце помилки.
Чи може JSON містити коментарі?
Ні — специфікація JSON (RFC 8259) явно забороняє коментарі. Якщо потрібні коментарі в конфігураційних файлах, використовуйте JSONC або JSON5 локально і видаляйте коментарі перед серіалізацією.
Що є допустимим кореневим значенням JSON?
Будь-яке JSON-значення може бути кореневим: об'єкт {}, масив [], рядок, число, true, false або null. На практиці більшість API використовує об'єкт або масив як корінь, але всі шість типів синтаксично валідні.