JSON Stringify

Преобразуйте JSON в строку, которую удобно вставлять в код, URL или текстовые поля, и при необходимости восстановите её обратно в JSON.

Похожие

Что такое JSON Stringify и строковое встраивание?

JSON Stringify — это сериализация JSON-объекта или массива в строковое представление. В JavaScript для этого обычно используется `JSON.stringify()`.

На практике результат сериализации часто нужно не просто сохранить, а встроить в исходный код, поле базы данных, query-параметр URL или в другой JSON как строковое значение. В таких случаях нужно дополнительно экранировать кавычки, переводы строк и обратные слэши.

Этот инструмент делает стандартную сериализацию и сразу добавляет безопасное экранирование для встраивания. Parse режим выполняет обратную операцию и восстанавливает читаемый JSON. Ничего не отправляется на сервер — всё происходит локально.

Варианты использования

  • Сделать строковый литерал из JSON для JavaScript / Java / Python / Go
  • Вложить JSON-ответ API в другой JSON как строковое поле
  • Сохранить JSON-строку в TEXT-колонке БД или значении Redis
  • Передать JSON через query-параметр или заголовок URL
  • Преобразовать строку из логов или конфигов обратно в читаемый JSON

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

  1. Вставьте JSON или строку в левое поле, либо загрузите пример / файл
  2. Выберите режим Stringify или Parse и при необходимости настройте формат вывода
  3. Проверьте результат справа и скопируйте его в код, документ или конфиг
  4. При необходимости скачайте `stringified.txt` или `parsed.json`

Функции

  • Два режима: поддерживает Stringify и Parse для двустороннего преобразования
  • Автоматическое экранирование: безопасно обрабатывает кавычки, слэши, переводы строк и табы
  • Несколько форматов вывода: строка с кавычками, форматированный JSON или компактная однострочная версия
  • Подходит для встраивания в код: результат удобно вставлять в JavaScript, Java, Python и Go
  • Полезен для URL и БД: удобно хранить JSON в текстовых полях и передавать между сервисами
  • Полностью локальная обработка: сериализация и обратное восстановление происходят в браузере

Примеры кода

JavaScript: превратить JSON в строку для встраивания

javascript
const data = { name: 'Alice', age: 30, tags: ['dev', 'writer'] };
const json = JSON.stringify(data, null, 2);
const embedded = '"' + json
  .replace(/\\/g, '\\\\')
  .replace(/"/g, '\\"')
  .replace(/\n/g, '\\n')
  .replace(/\r/g, '\\r')
  .replace(/\t/g, '\\t') + '"';

Python: повторное экранирование через json.dumps

python
import json

data = {"name": "Alice", "age": 30}
pretty = json.dumps(data, indent=2, ensure_ascii=False)
embedded = json.dumps(pretty)
restored = json.loads(json.loads(embedded))

jq: сделать строку из JSON-файла

bash
jq -Rs . data.json

echo '"{\"name\":\"Alice\"}"' | jq -r .

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

JSON Stringify и JSON.stringify() — это одно и то же?

Базовая сериализация одинакова, но этот инструмент дополнительно добавляет внешние кавычки и экранирует внутренние специальные символы для безопасного встраивания.

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

JSON Stringify работает со всем JSON-объектом, а JSON Escape — только с обычной строкой и её спецсимволами.

После Stringify JSON станет нечитаемым?

Нет. В режиме Pretty сохраняются переносы строк и отступы, поэтому результат остаётся понятным.

Parse умеет восстанавливать `\n` и `\"`?

Да. Если входная строка корректно экранирована, инструмент снимет внешние кавычки и восстановит специальные символы.

Можно ли сразу вставлять результат в URL?

Для JSON это безопасно, но для URL всё равно лучше дополнительно применить encodeURIComponent.

Подходит ли инструмент для вложенного JSON?

Да. Вы можете превратить внутренний JSON в строковое значение и вставить его во внешний JSON.

Можно ли скачать результат в файл?

Да. Stringify сохраняется как `stringified.txt`, Parse — как `parsed.json`.

Отправляется ли мой JSON на сервер?

Нет. Всё работает локально, поэтому инструмент подходит и для конфиденциальных данных.

Устранение неполадок

Stringify показывает ошибку Invalid JSON

Чаще всего причина — хвостовая запятая, одинарные кавычки, ключи без кавычек или комментарии. Сначала исправьте JSON.

После Parse результат не становится JSON

Возможно, отсутствуют внешние кавычки или повреждены обратные слэши. Проверьте исходную строку.

После вставки в код возникает SyntaxError

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

Большие JSON-файлы тормозят браузер

На нескольких мегабайтах нагрузка на память заметно растёт. Для крупных файлов лучше использовать Node.js или Python.

Кириллица или emoji не превращаются в `\uXXXX`

Это нормально. JSON допускает прямые Unicode-символы. Если нужен именно `\uXXXX`, потребуется дополнительная постобработка.

Глоссарий

JSON.stringify
Встроенный метод JavaScript для сериализации значения JS в JSON-строку.
JSON.parse
Встроенный метод JavaScript для преобразования JSON-строки обратно в объект или массив.
Serialize
Преобразование структуры данных из памяти в текстовый формат для хранения или передачи.
Deserialize
Обратное преобразование строки в структуру данных.
Escape
Добавление обратного слэша перед специальными символами, чтобы не ломать внешний синтаксис.
String Literal
Строковая константа в исходном коде, заключённая в кавычки.
Double-Escape
Повторное экранирование уже экранированной строки при вложении в другой уровень.
URL Encode
Преобразование специальных URL-символов в `%XX`; это отдельный этап после JSON-экранирования.

Таблица экранирования символов в JSON Stringify

Исходный символПосле StringifyНазваниеПояснение
"\"Двойная кавычкаОбязательное экранирование для внешней строки
\\\Обратный слэшСам символ экранирования тоже дублируется
Перевод строки\nNewlineНужен для безопасной вставки в одну строку
Табуляция\tTabЭкранируется как управляющий символ
Возврат каретки\rCarriage ReturnЧасть Windows-переноса строки
//СлэшОбычно можно не экранировать

Разница между JSON.stringify и этим инструментом

ИнструментВходВыходТипичный сценарий
JSON.stringify()JS-объектОбычная JSON-строкаAPI, файлы, обычная сериализация
Stringify режим этого инструментаJSON-объектСтрока для встраивания с кавычками и экранированиемКод, БД, URL, вложенный JSON
Parse режим этого инструментаЭкранированная строкаСтандартный JSON-объектВосстановление JSON из логов и БД
JSON EscapeОбычная строкаСтрока только с экранированием спецсимволовБезопасная работа с текстовыми фрагментами

Authoritative References