Monu Tools

JSON в TypeScript

Генерируйте TypeScript-интерфейсы из образца JSON с вложенными типами, массивами и опциональными полями. Работает в браузере.

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

  1. 01

    Вставьте JSON-объект или массив.

  2. 02

    При желании укажите имя корневого интерфейса.

  3. 03

    Скопируйте сгенерированные TypeScript-интерфейсы.

What the generator does

This is a JSON to TypeScript generator that infers a set of interfaces from an example JSON object or array, so you can paste an API response and get ready-to-use types instead of writing them by hand.

It is a big time-saver when you are consuming an API or a config file: paste a response, optionally name the root interface, and copy clean TypeScript straight into your code.

Generation runs entirely in your browser, so your data never leaves your device, which matters when the sample contains real values.

How it handles real-world shapes

It handles real-world shapes: nested objects become their own named interfaces referenced from the parent, arrays of objects are merged into one interface, and union types are produced where values vary.

Optional fields across mixed arrays

When the objects in an array do not all have the same keys, the keys missing from some elements are marked optional with a question mark, which matches how the data actually behaves and keeps the types honest.

It infers, it does not enforce a schema

One important point: it infers a shape from the single sample you give it, rather than enforcing a schema. If a field is sometimes null or absent in real data but not in your sample, the generated type will not know that, so use a representative example.

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

Как обрабатываются вложенные объекты?

Каждый вложенный объект становится отдельным именованным интерфейсом, на который ссылается родительский -- результат чистый и повторно используемый.

Что происходит с массивами разных форм?

Массивы объектов объединяются в один интерфейс, а ключи, отсутствующие в некоторых элементах, помечаются опциональными. Массивы смешанных примитивов получают тип объединения элементов.

Загружается ли мой JSON куда-либо?

Нет. Типы генерируются полностью в браузере, поэтому данные никогда не покидают устройство.

Источники

Встроить этот инструмент

Добавьте этот инструмент на свой сайт. Скопируйте фрагмент ниже, он обновляется автоматически.

<iframe src="https://monu.tools/embed/ru/json-to-typescript" width="100%" height="640" style="border:1px solid #e5e5e5;border-radius:12px;max-width:680px" loading="lazy" title="Monu Tools"></iframe>

Похожие инструменты