Починить JSON

Из свободного JSON в строгий: комментарии, одинарные кавычки, ключи без кавычек и висячие запятые.

JSON, который почти читается

Редакторы и журналы часто оставляют комментарии, одинарные кавычки, ключи без кавычек или запятую перед закрывающей скобкой. Строгий разбор это отвергает. Страница переписывает такие привычки и выравнивает значение. Комментарии удаляются, а не сохраняются. Дерево правят в форматировании JSON. Два значения сравнивают в сравнении JSON.

Как пользоваться

  1. Вставьте свободный текст. Считать по мере ввода включено, результат обновляется при правке. Преобразовать делает тот же шаг один раз.
  2. Очистить всё опустошает ввод и результат.
  3. Копировать результат копирует строгий JSON.
  4. Показать пример подставляет {name: 'Ada', n: 1, tags: ['a',],} и строку // note. В результате объект с name Ada, n 1 и tags, где есть a. Комментария нет.

Что переписывается

// и /* */ вне строк удаляются. Текст в одинарных кавычках становится строкой JSON. Последовательности \n, \t, \r, \', \" и \\ превращаются в названные символы. Голое слово берётся в кавычки, кроме true, false и null: они остаются ключевыми словами при любом регистре. undefined, NaN и Infinity становятся null. Запятая, после которой до } или ] только пробел или комментарий, отбрасывается. Отступ — два пробела. Текст, уже стоящий в двойных кавычках, копируется как есть. Если после этого это всё ещё не JSON или поле пустое, страница сообщает о неверном JSON.

Где пригодится

  • Конфигурация, скопированная из JavaScript.
  • Пример API с висячей запятой.
  • Строка журнала с // рядом с объектом.

Вопросы

Комментарий пропал.

Починка строит строгий JSON. Комментарии в JSON не входят, поэтому их удаляют.

Число в кавычках осталось строкой.

То, что уже в двойных кавычках, не трогают. Переписываются только голые слова и строки в одинарных кавычках.