JSON 转 TypeScript 工具 — 免费在线

粘贴 JSON,即可自动生成 TypeScript 接口,包括嵌套对象。

结果仅供参考,可能包含错误。请自行核实重要信息。使用本工具风险自负。

这个工具能做什么

JSON 转 TypeScript 工具读取一个 JSON 示例对象,并生成与之匹配的 TypeScript 接口。每个嵌套对象都有自己命名的接口,每个属性的类型则根据其值推断:string、number、boolean、null、数组类型或另一个接口。

在接口名称字段中设置接口名。如果 JSON 是数组,类型取自它的第一个元素,并会额外添加一个列表类型,例如 type UserList = User[];。

适用场景

  • 为你在 TypeScript 前端或 Node.js 服务中调用的 API 响应添加类型。
  • 基于真实的 payload 建立数据模型,而不是手写接口。
  • 为团队记录 webhook 或事件 payload 的结构。

示例

输入

{"id": 1, "name": "Ana", "active": true, "address": {"city": "Lisbon"}, "tags": ["admin"]}

输出

interface Address {
  city: string;
}

interface User {
  id: number;
  name: string;
  active: boolean;
  address: Address;
  tags: string[];
}

关于这个工具的问题

能识别可选属性吗?

不能。类型是从单个示例推断出来的,所以示例中缺少的属性在接口中也会缺失。请给并非总会出现的属性加上 ?。

null 会得到什么类型?

示例中为 null 的值会得到 null 类型。如果该字段可能有值,请把它改成联合类型,例如 string | null。

混合类型的数组会怎样处理?

元素类型会变成联合类型,例如 (string | number)[]。空数组会变成 unknown[],因为没有可供推断的内容。

这个工具免费吗?

是的,完全免费。无需注册或电子邮箱。结果直接显示在本页。

如何获取结果?

在此页面使用工具即可查看结果,无需通过电子邮件接收。