Выравниватель JSON

Работает локально в браузере

Превращайте вложенный JSON в ключи-пути и восстанавливайте обратно

Режим

Вложенный JSON

Вставьте вложенный JSON или загрузите пример, чтобы выровнять его.
Что делает JSON Flattener

JSON Flattener превращает вложенные объекты и массивы в один уровень ключей-путей вида user.address.city или users[0].name и восстанавливает вложенный JSON из таких ключей. Плоские ключи удобны для систем конфигурации, файлов переводов, столбцов таблиц, поисковых индексов и сравнений, которые трудно читать при глубокой вложенности. Строки, числа, логические значения, null, пустые объекты и пустые массивы сохраняют свой тип, а числа за пределами точности JavaScript, например 9007199254740993, записываются с теми же цифрами.

Как пользоваться
  1. 1.Выберите выравнивание или восстановление, затем вставьте JSON, загрузите или перетащите один файл .json либо загрузите пример.
  2. 2.Выберите разделитель (. / _ или __) и способ записи индексов массивов: в скобках (items[0]) или через разделитель (items.0).
  3. 3.В режиме выравнивания выберите вывод: объект JSON, строки ключ=значение или переменные окружения.
  4. 4.Посмотрите результат проверки обратного преобразования и список замечаний; в каждом замечании указаны точные пути.
  5. 5.Скопируйте результат или скачайте flattened.json, unflattened.json, flattened.txt или flattened.env. Чтобы проверить обратное направление, используйте «Восстановить этот результат».
Коллизии, конфликты и проверка обратного преобразования

Выравнивание обратимо, только если каждый ключ разбирается обратно в исходный путь. Ключ, уже содержащий разделитель (например, "a.b" при разделителе-точке), и два пути, дающие один и тот же плоский ключ, сообщаются вместе с обоими путями; сохраняется первое значение, и ничего не пропадает без предупреждения. При восстановлении также сообщается, если путь должен быть одновременно значением и объектом (user и user.name), если индекс слишком далеко за концом массива или если в массиве есть пропуски — они заполняются null. После каждого запуска с выводом JSON инструмент выполняет обратную операцию и сравнивает результат, поэтому «Обратное преобразование проверено» — это реальная проверка, а не обещание.

Переменные окружения, ограничения и конфиденциальность

Имена переменных окружения переводятся в верхний регистр, слова в camelCase разделяются символом _, диакритика удаляется, а любой символ вне A–Z и 0–9 становится _, поэтому database.primary.port превращается в DATABASE_PRIMARY_PORT. Имена, начинающиеся с цифры, получают префикс _, а совпадающие имена сообщаются. Выводы ключ=значение и переменные окружения односторонние. Ключи объектов, похожие на целые числа, идут первыми, потому что так их упорядочивает JavaScript; вложенность глубже 256 уровней сохраняется как одно значение, а ввод больше 2 МБ обрабатывается по нажатию основной кнопки. Всё выполняется в вашем браузере, JSON никуда не загружается.

CodingTool официально запущен на

Launched on StartupBaseCodingTool.dev - Free, Fast & Easy Developer Tools in One Place | Product HuntCodingTool - Featured on Startup FameFazier badgeListed on Turbo0Featured on Twelve ToolsFeatured on Findly.tools