Проверка JSON

Проверьте JSON по грамматике RFC 8259: точная строка, столбец и причина ошибки, предупреждения о повторяющихся ключах и статистика структуры.

Работает полностью в вашем браузере. Ваши данные никуда не загружаются.

Похожие Инструменты

Просмотреть Все

Что такое Проверка JSON?

Инструмент проверяет, является ли текст корректным JSON по RFC 8259. Для некорректного ввода он показывает строку и столбец первой ошибки, причину простыми словами и строку исходника с указателем. Для корректного — выводит сводку по структуре и предупреждает о повторяющихся ключах.

Как пользоваться Проверка JSON

  1. Вставьте JSON в поле ввода.
  2. Нажмите Проверить (результаты также обновляются по мере ввода).
  3. Если есть ошибка, посмотрите строку и столбец и выделенную строку исходника, исправьте и проверьте снова.
  4. Для корректного JSON изучите сводку (тип корня, число объектов, массивов и значений, глубина) и предупреждения о повторяющихся ключах.

Пример

Ввод
{
  "a": 1
  "b": 2
}
Вывод
Line 3, column 3 – Expected "," or "}" after the property value

Строка исходника показана под сообщением с указателем под символом «b».

Когда использовать Проверка JSON

Используйте перед коммитом конфига, когда API отклоняет ваш запрос или когда JSON.parse выдаёт лишь «Unexpected token». Проверяется только синтаксис; чтобы убедиться, что у данных верные поля и типы, используйте проверку по JSON-схеме. Файлы JSON5/JSONC будут признаны некорректными.

Как работает Проверка JSON

Строгий парсер рекурсивного спуска читает текст посимвольно и отслеживает текущую позицию. Он отвергает всё, что запрещает грамматика JSON: одинарные кавычки, комментарии, завершающие запятые, ведущие нули, NaN, неэкранированные управляющие символы, данные после корневого значения — и указывает позицию, где обнаружена проблема. При успешном разборе он обходит дерево, считает объекты, массивы и скалярные значения и измеряет глубину вложенности. Ключи, встречающиеся в одном объекте дважды, отмечаются с позицией, потому что большинство парсеров молча оставляют только последнее значение.

Распространенные Случаи Использования

  • Выяснение, почему API отвечает 400 Bad Request на JSON-тело
  • Проверка вручную отредактированных package.json или файлов в стиле tsconfig (без комментариев)
  • Поиск повторяющихся ключей, которые молча перезаписывают значения
  • Изучение точных правил грамматики JSON

Примечание по Безопасности

Всё выполняется локально в вашем браузере: вставленный код никуда не загружается.

Часто Задаваемые Вопросы

Разрешены ли комментарии?

Нет. В JSON нет синтаксиса комментариев; // и /* */ считаются ошибками.

Почему повторяющийся ключ — только предупреждение?

В RFC сказано, что имена СЛЕДУЕТ делать уникальными, но повторы не объявлены недопустимыми. Большинство парсеров берёт последнее значение, что часто скрывает ошибки.

Проверяет ли он данные по схеме?

Нет, только синтаксис. Для структурных правил используйте проверку по JSON-схеме.

Столбец считается в символах или в байтах?

В символах (единицах кода UTF-16), начиная с 1.

Другие категории