PASTE JSON. GET TYPES.

JSON → TypeScript.

粘贴一段 JSON,直接拿到可用的 interface 或 type。

免费 · 无需登录纯浏览器本地生成
JSON → TypeScript
停止输入 300 ms 后自动生成
支持嵌套对象、数组、null 和混合类型482 字符
输出可以直接编辑,不会上传29 行

所有解析和类型生成都在你的浏览器中完成,JSON 不会上传到服务器。 页面不会自动保存输入,刷新后即清空。

从 JSON 到类型定义,只需三步

STAY IN THE BROWSER
01

粘贴 JSON

放入任意一段合法 JSON。工具会读取嵌套对象、数组、null 和混合类型,并指出语法错误所在的行列。

02

调整类型输出

选择 interface 或 type,设置根类型名,按需打开 export、readonly 和对象数组合并。

03

检查、复制或下载

输出可以直接编辑,一键复制到项目,或下载为 .ts 文件。全程不经过服务器。

A FEW THINGS TO KNOW

你可能想知道

关于命名、数组、隐私和推断结果。

这个 JSON 转 TypeScript 工具免费吗?

免费,无需注册,也没有次数限制。粘贴 JSON 后会自动生成类型定义,结果可以继续编辑、复制或下载为 .ts 文件。

我的 JSON 会被上传吗?

不会。解析、类型推断和下载都在浏览器里完成,数据不会发送到服务器,也不会被保存;刷新页面后输入即清空。

嵌套对象会怎么命名?

每个嵌套对象都会生成独立的类型声明。根对象下的 user 会命名成 User,User 里的 address 会命名成 UserAddress;重名时自动追加数字,例如 User2。

对象数组会合并字段吗?

默认会。数组里的所有对象取字段并集,某个对象缺少的字段会标成可选(?)。关闭「合并对象数组」后,不同对象形态会分别命名,数组元素变成多个类型的联合。

根节点是数组时会怎样?

interface 只能描述对象,所以根节点是数组或标量时,根类型会自动改用 type 输出,页面会给出提示。嵌套对象仍按当前选择生成 interface 或 type。

null、空对象和空数组怎么处理?

null 会输出成 null,合并后可能得到 T | null;空对象生成空类型;空数组因为没有元素信息,会输出 unknown[]。混合类型数组会生成联合类型。

生成结果能直接用于项目吗?

可以作为起点。类型是从当前这一份 JSON 样本推断出来的,样本里没出现过的字段不会自动补上;建议把输出复制到项目后再按接口文档补充或收紧类型。

类型定义好了,接着写点代码?

探索 AIGoCode,让 AI 更顺手地融入你的开发工作流。

探索 AIGoCode ↗