> форматировать | валидировать | минифицировать <
// Форматируйте, валидируйте и минифицируйте данные JSON мгновенно
Красивая Печать
Форматируйте JSON с настраиваемыми отступами. Выберите 2 пробела, 4 пробела или табуляции.
Компактный Вывод
Минифицируйте JSON, удалив все пробелы. Уменьшите размер для продакшена и API.
Проверка Синтаксиса
Валидируйте синтаксис JSON мгновенно. Получайте подробные сообщения об ошибках.
// О ФОРМАТИРОВАНИИ JSON
Что такое JSON:
JSON (JavaScript Object Notation) — это легковесный формат обмена данными, определённый RFC 8259. Он легко читается и пишется людьми, и легко парсится и генерируется машинами.
Пример:
{"name":"John","age":30} → {\n "name": "John",\n "age": 30\n}
Типичные случаи использования:
- >Отладка и анализ ответов API
- >Форматирование конфигурационных файлов
- >Валидация данных перед обработкой
- >Уменьшение размера минификацией
- >Сортировка ключей для единообразного вывода
>> часто задаваемые вопросы
В: Что такое форматировщик JSON?
О: Форматировщик JSON берёт сырые или минифицированные данные JSON и переформатирует их с правильными отступами и переносами строк.
В: В чём разница между форматированием и минификацией?
О: Форматирование добавляет отступы и переносы строк. Минификация удаляет все лишние пробелы для уменьшения размера файла.
В: Как работает валидация JSON?
О: Валидация JSON проверяет соответствие ввода спецификации JSON (RFC 8259), включая скобки, кавычки и типы данных.
В: Для чего сортировать ключи?
О: Алфавитная сортировка переупорядочивает все ключи объекта в структуре JSON для удобного сравнения и единообразия.
В: Как JSON сравнивается с YAML?
О: JSON использует фигурные скобки со строгим синтаксисом, а YAML — отступы. JSON шире поддерживается в API. YAML более читаем, но сложнее в парсинге.
// Частые ошибки в JSON
Эти записи допустимы в JavaScript, но недопустимы в строгом JSON.
| Неверно | Верно |
|---|---|
| {'a': 1} | {"a": 1} |
| {"a": 1,} | {"a": 1} |
| {a: 1} | {"a": 1} |
| {"a": undefined} | {"a": null} |
| {"a": 01} | {"a": 1} |
// Форматирование JSON в коде
JavaScript JSON.stringify(obj, null, 2) Python json.dumps(obj, indent=2, ensure_ascii=False) PHP json_encode($obj, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE) Go json.MarshalIndent(v, "", " ") Java new ObjectMapper().writerWithDefaultPrettyPrinter() CLI jq . file.json CLI python3 -m json.tool file.json
>> Другие вопросы
В: Меняет ли форматирование мои данные?
О: Нет, меняются только пробелы и отступы. Порядок ключей и значения сохраняются, если вы явно не включили сортировку ключей.
В: Теряется ли точность у больших чисел?
О: JavaScript читает числа как 64-битные числа с плавающей запятой, поэтому целые больше 9 007 199 254 740 991 (2^53−1) могут потерять точность. Если ваши идентификаторы так велики, храните их строками.
В: Чем JSON отличается от объекта JavaScript?
О: JSON — строгий текстовый формат: ключи и строки в двойных кавычках, без функций, undefined, комментариев и завершающих запятых. Литерал объекта JavaScript гораздо свободнее.