Перейти к содержимому

Конвертер JSON5 в JSON

Превратите JSON5 или JSON с комментариями в строгий JSON и посмотрите, что изменилось.

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

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

  1. Вставьте JSON5 или JSONC в поле «Исходный JSON5 / JSONC» или загрузите файл.
  2. В разделе «Результат» выберите «С отступами» или «Сжатый».
  3. Для результата с отступами задайте «Отступ»: «2 пробела», «4 пробела» или «Табуляция».
  4. При необходимости включите «Сортировать ключи».
  5. Если ввод больше 1 МБ, нажмите «Конвертировать» или Ctrl+Enter (Cmd+Enter на Mac). До 1 МБ конвертация выполняется автоматически.

Примеры

Настройки VS Code без комментариев

Исходные данные
{
  // Настройки редактора
  "editor.tabSize": 2,
  "editor.wordWrap": "on",
  "files.autoSave": "afterDelay",
}
Результат
{
  "editor.tabSize": 2,
  "editor.wordWrap": "on",
  "files.autoSave": "afterDelay"
}

Компактный JSON с длинным ID

Исходные данные
{
  заказ: 12345678901234567890,
  город: 'Казань',
  количество: +2,
  скидка: .5,
  цвет: 0xFF,
}
Результат
{"заказ":12345678901234567890,"город":"Казань","количество":2,"скидка":0.5,"цвет":255}

Infinity и NaN как строки

Исходные данные
{
  датчик: 'Температура склада',
  значение: NaN,
  максимум: Infinity,
  минимум: -Infinity
}
Результат
{
    "датчик": "Температура склада",
    "значение": "NaN",
    "максимум": "Infinity",
    "минимум": "-Infinity"
}

JSON5 → JSON: что меняется

ИзменитьИсходный JSON5Результат JSON
Комментарии удалены{"a": 1 // note}{"a": 1}
Запятые в конце удалены[1, 2,][1, 2]
Имена свойств взяты в кавычки{name: 1}{"name": 1}
Строки в одинарных кавычках преобразованы'say "hi"'"say \"hi\""
Шестнадцатеричные числа переведены в десятичные0x1F31
Числа нормализованы+1, .5, 5.1, 0.5, 5
Многострочные строки объединены'a\↵b'"ab"
Escape-последовательности преобразованы'\x41\v'"A\u000b"

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

Чем JSON5 отличается от JSON и JSONC?

JSON5 допускает комментарии, ключи без кавычек, строки в одинарных кавычках, шестнадцатеричные числа и запятые после последнего элемента. JSONC — это JSON с комментариями; конвертер принимает в нём и запятые после последнего элемента. Строгий JSON ничего из этого не допускает, поэтому при конвертации комментарии удаляются, а остальное приводится к строгой форме.

Что делать с Infinity и NaN при конвертации в JSON?

В поле «Infinity и NaN» выберите «Заменить на null», «Преобразовать в строки» или «Показать ошибку». Каждая замена отмечается в отчёте с указанием строки и столбца; при выборе ошибки результат остаётся пустым.

Что происходит с повторяющимися ключами?

Конвертер сохраняет оба вхождения, а не заменяет одно другим. В отчёте появляется предупреждение со ссылками на позиции повторяющихся ключей.

Почему JSON5 не конвертируется?

Числа с ведущими нулями вроде 01, значения True, None и undefined, а также типографские кавычки не входят в JSON5. При ошибке результат остаётся пустым: сообщение показывает строку, столбец и фрагмент кода.

Отправляются ли данные на сервер?

Конвертация выполняется в браузере, введённый текст не отправляется на сервер. При переходе в связанный инструмент текст временно передаётся через sessionStorage и удаляется после чтения; аналитика получает события без содержимого ввода.