Как пользоваться
- Вставьте JSON5 или JSONC в поле «Исходный JSON5 / JSONC» или загрузите файл.
- В разделе «Результат» выберите «С отступами» или «Сжатый».
- Для результата с отступами задайте «Отступ»: «2 пробела», «4 пробела» или «Табуляция».
- При необходимости включите «Сортировать ключи».
- Если ввод больше 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\"" |
| Шестнадцатеричные числа переведены в десятичные | 0x1F | 31 |
| Числа нормализованы | +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 и удаляется после чтения; аналитика получает события без содержимого ввода.