Перейти к содержанию
100% локально

Преобразователь стиля ключей JSON

Переименуйте все ключи в JSON-объекте на camelCase, snake_case, kebab-case, PascalCase или SCREAMING_SNAKE_CASE.

Входные данные
Выходные данные

Преобразователь стиля ключей JSON

Вставьте JSON-объект или массив, и этот инструмент переименует каждый ключ на соглашение об именовании, используемое в вашей кодовой базе. Он проходит по структуре рекурсивно, поэтому глубоко вложенный объект под несколькими уровнями свойств получит преобразование каждого его ключа, а не только верхний уровень. Используйте его после получения полезной нагрузки из API, использующего snake_case, в кодовую базу JavaScript или TypeScript, которая ожидает camelCase, или наоборот при подготовке тела запроса для бэкэнда, написанного на Python или Ruby.

Выберите целевой стиль из camelCase, PascalCase, snake_case, kebab-case или SCREAMING_SNAKE_CASE. По умолчанию каждый ключ преобразуется, включая ключи, принадлежащие объектам, вложенным в массивы — отключите опцию «Преобразовать ключи внутри массивов», если вы хотите только преобразование верхнего уровня и непосредственно вложенных объектов, оставляя элементы массива точно такими, как они пришли. Поле исключений принимает разделённый запятыми или переводом строки список имён ключей — таких как собственное поле API _id или __v — которые должны оставаться нетронутыми везде, где они появляются в структуре, на любой глубине.

Переименование двух стилизованных по-разному ключей на одно и то же целевое имя — это реальный риск, когда стили смешаны — foo_bar и fooBar оба становятся fooBar в camelCase, и один из них молча перезапишет другой в результате. Включите опцию «Предупреждать о коллизиях ключей», и суммарная информация под результатом покажет точное количество произошедших коллизий, чтобы вы заметили это до отправки полезной нагрузки с отсутствующим полем. Суммарная информация также показывает, сколько всего ключей было фактически переименовано, и размер результата в байтах. Выберите отступ из 2 пробелов, 4 пробелов, табуляции или минифицированного вида в соответствии с форматированием вашего проекта.

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

FAQ

Переименует ли инструмент ключи внутри вложенных объектов и массивов?
Да, по умолчанию инструмент проходит через каждый вложенный объект, включая объекты внутри массивов. Отключите опцию «Преобразовать ключи внутри массивов», если вы хотите трогать только верхний уровень и непосредственно вложенные объекты, оставляя элементы массива точно такими, как они пришли.
Что происходит, если два ключа получают одно и то же имя после преобразования?
Более поздний ключ перезапишет более ранний в результате, как и любой JSON-объект. Включите опцию «Предупреждать о коллизиях ключей», и вы увидите в суммарной информации точное количество произошедших коллизий перед тем, как полагаться на результат.
Могу ли я оставить некоторые ключи без изменений, например _id?
Да. Перечислите их в поле исключений, разделяя запятыми или один на каждой строке, и они останутся нетронутыми на каждом уровне структуры.
Что считается границей слова внутри ключа?
Подчёркивания, дефисы, пробелы и прописные буквы в camelCase/PascalCase — все они обозначают границу, поэтому first_name, first-name и firstName все разбиваются на одни и те же два слова перед пересборкой в целевом стиле.
Загружается ли мой JSON где-то?
Нет. Преобразование ключей выполняется полностью в вашем браузере — ваш JSON, включая любые содержащиеся в нём приватные данные, никогда не покидает ваше устройство.