JSON 转 TypeScript 接口
粘贴任意 JSON 对象,即时生成带有可选/必填字段推断的 TypeScript 类型接口。支持嵌套对象、数组和联合类型。完全在浏览器中运行,无需发送数据到服务器。
根接口名称:
可选字段:
JSON 输入
TypeScript 输出
TypeScript 接口将显示在此处
相关工具
关于 JSON 转 TypeScript 接口生成器
工作原理
- 在输入面板中粘贴任意有效的 JSON 对象
- 输入时自动生成 TypeScript 接口
- 嵌套对象生成独立的命名接口
- 切换可选字段以用 "?" 标记所有属性
- 一键复制结果 — 不向任何服务器发送数据
常见使用场景
- 从 REST API 响应生成 TypeScript 类型
- 为配置对象和设置文件添加类型
- 将 JSON Schema 示例转换为 TypeScript 接口
- 集成第三方 API 时快速建立类型定义
- 在 TypeScript 项目中记录数据结构
常见问题
什么是 TypeScript 接口?
TypeScript 接口是在 TypeScript 中定义对象形状的一种方式。它指定对象应具有的属性名称和类型,实现编译时类型检查和更好的 IDE 自动完成。
此工具如何从 JSON 生成 TypeScript 接口?
工具解析您的 JSON 输入,并递归分析每个值以推断适当的 TypeScript 类型。对象变为接口,数组变为类型化数组,原始值映射到其 TypeScript 等价物(string、number、boolean、null)。
我的 JSON 数据会发送到服务器吗?
不会。所有处理完全在您的浏览器中使用 JavaScript 进行。您的 JSON 数据不会传输到任何服务器,因此敏感数据完全保持私密。
如何处理可选字段?
启用可选字段模式时,生成的接口中所有字段都会用 "?" 标记,表示它们是可选的。这在处理可能不总是返回所有字段的 API 时很有用。
数组如何转换为 TypeScript 类型?
数组根据其元素类型进行类型化。例如,字符串数组变为 string[],数字数组变为 number[],对象数组生成单独的接口并使用该接口类型。
JSON 中的 null 值如何处理?
JSON 的 null 值在生成的 TypeScript 中被类型化为 "null"。如果字段可能是值或 null,您可能需要手动将类型调整为 "string | null"。
此工具能处理深层嵌套的 JSON 吗?
可以。工具递归处理嵌套对象,并为每个嵌套对象层级生成单独的 TypeScript 接口。每个嵌套对象都有自己的命名接口。
生成接口的命名规范是什么?
根接口默认始终命名为 "Root"(可自定义)。嵌套对象生成以属性键派生的 PascalCase 命名接口。
支持哪些 TypeScript 类型?
工具支持所有常见 JSON 类型:string、number、boolean、null、数组和对象。混合类型数组生成联合类型,如 "(string | number)[]"。
可以直接在 TypeScript 项目中使用输出吗?
可以。生成的接口是有效的 TypeScript,可以直接复制到您的项目中。您可能需要将 "Root" 重命名为更有意义的名称。
JSON 无效时该怎么办?
如果 JSON 无效,工具将显示错误消息。常见问题包括缺少逗号、未加引号的键或尾随逗号。
此工具支持 TypeScript 泛型吗?
工具基于实际 JSON 结构生成不带泛型的具体接口。对于涉及泛型的复杂类型场景,您需要手动调整生成的输出。