免费开发者工具

JSON 转 TypeScript 转换器 从接口示例生成类型定义

粘贴 JSON 示例数据,JSON 转 TypeScript 转换器会为接口返回值、测试数据和前端模型生成 TypeScript interface 或 type,数据不会上传。

AD

JSON 转 TypeScript 转换器解决的问题

从接口示例到可靠 TypeScript 结构,不再手写每个字段。

数组结构经常不完全一致

同一个数组里的对象缺少不同字段时,JSON 转 TypeScript 转换器会把这些属性标记为可选。

查看使用方法

开发者工具可以互相配合

可以先用 JSON 格式化工具整理数据,用 CSV 转 JSON 转换器转换表格,或用 YAML JSON 转换器处理 YAML 后再生成类型。

打开 JSON 格式化工具

JSON 转 TypeScript 转换器的前端开发功能

根据真实 JSON 示例生成实用 TypeScript,并控制命名、导出和 null 处理。

Interface 或 type 输出

按项目习惯在 interface 声明和 type 别名之间切换。

嵌套对象推断

对象和数组里的嵌套对象会得到可读的类型名称。

数组缺失字段可选

数组项字段不一致时,缺失属性会变成可选字段。

null 联合类型控制

选择是否把 null 输出为 string | null 这类联合类型。

日期字符串识别

类似 ISO 的日期字符串可以识别为 Date,方便检查时间字段。

本地复制和下载

复制 TypeScript 输出或下载 .ts 文件,JSON 数据不会离开浏览器。

如何使用 JSON 转 TypeScript 转换器

流程很短:粘贴 JSON,选择生成规则,然后复制 TypeScript 结果。

01

粘贴 JSON 示例数据

加入单个对象、对象数组或嵌套接口返回值,也可以点示例查看 null、日期、数组和可选字段。

  • 如果数据很乱,可以先用 JSON 格式化工具整理。
02

选择 TypeScript 选项

选择 interface 或 type,设置是否 export、是否使用 PascalCase 类型名,以及 null 和日期字符串处理方式。

  • PascalCase 影响生成的类型名称,不会改动原始 JSON 属性名。
03

检查状态并复制

查看状态区域的 JSON 错误、非法字段名和数组结构不一致提示,然后复制或下载 .ts 文件。

  • 当 JSON key 不是合法 TypeScript 标识符时,会生成带引号的属性名。

JSON 转 TypeScript 转换器工作流

用 JSON 转 TypeScript 转换器完成接口类型生成、数组结构检查和项目导出设置。

把 JSON 示例转成 TypeScript

粘贴接口示例数据,生成符合嵌套响应结构的 TypeScript 声明。

JSON 转 TypeScript 转换器将 JSON 示例数据转换为 TypeScript interface 输出

安全处理不一致数组

识别字段不同的数组对象,并把缺失属性标为可选,让类型贴近真实数据。

JSON 转 TypeScript 转换器检测数组对象字段不一致并标记可选字段

按项目习惯调整输出

复制前设置 interface 或 type、export、PascalCase 名称、日期识别和 null 联合类型。

JSON 转 TypeScript 转换器的 interface type export PascalCase 日期和 null 联合类型选项

JSON 转 TypeScript 转换器使用场景

前端开发者、接口调用者和测试作者都可以更快把示例数据变成 TypeScript。

接口客户端模型

为 fetch 封装、SDK 适配器和前端数据加载器创建响应类型。

测试数据类型

为测试、演示、Storybook 和种子数据中的 mock JSON 生成类型。

TypeScript 迁移

从应用里已有的 JSON payload 开始,把 JavaScript 项目逐步迁移到 TypeScript。

JSON 转 TypeScript 转换器常见问题

关于 JSON 解析、数组、可选字段、null、日期和 TypeScript 输出的常见回答。

JSON 转 TypeScript 转换器会上传数据吗?

不会。JSON 会在浏览器中解析,TypeScript 也在本地生成。

数组对象字段不一样时会怎样?

转换器会合并观察到的字段,并把部分对象缺少的属性标记为可选。

非法 JSON 字段名怎么处理?

不是合法 TypeScript 标识符的 key 会输出为带引号的属性名,并在状态区域提示。

可以生成 interface 和 type 吗?

可以。使用模式按钮即可在 interface 声明和 type 别名之间切换。

开始使用 JSON 转 TypeScript 转换器

粘贴 JSON,生成 TypeScript interface 或 type,检查可选字段和 null 联合类型,然后复制到前端项目中。

永久免费 - 浏览器本地生成 TypeScript。