ToolGen

开发工具

JSON 转 TypeScript在线工具

JSON 转 TypeScript 工具可以根据 JSON 对象或数组自动推断字段类型,生成 interface 和 type 定义,适合把接口样例快速整理成前端可用的类型声明。

功能介绍

前端接口联调时逐个手写类型声明既费时又容易漏字段。本工具把接口返回的 JSON 样本直接转换成 TypeScript 代码:粘贴 JSON 后即时生成 export interface 定义,嵌套对象会拆分成独立接口,名称跟随父级类型和字段名自动派生。

类型推断覆盖了样本数据的常见情况:对象数组会合并所有元素出现过的字段,只在部分元素中出现的字段自动加问号成为可选属性;同一字段出现多种类型时生成联合类型;带短横线、空格等字符的字段名会自动加引号;顶层是数组或基础值时改为输出 export type 别名。

使用方法

  1. 在根类型名称输入框设定顶层类型名,工具会转成 PascalCase 并在下方提示实际生成的名称;
  2. 把 JSON 对象或数组粘贴进左侧输入框,右侧立即显示生成的 TypeScript 定义,无需点击转换;
  3. 第一次使用可点击示例按钮加载样本,观察嵌套对象、对象数组合并和非标准字段名的处理方式;
  4. 确认结果后点击结果面板右上角的复制按钮,把类型代码粘贴到项目中。

注意事项

  • 类型基于单份样本推断,样本中恰好为 null 或缺失的字段会被推断成 null 类型或可选属性,接入前应结合接口文档人工复核可选字段和联合类型。
  • 空数组无法推断元素类型,会输出 unknown[],需要手动补充实际类型。
  • JSON 解析和代码生成都在浏览器内完成,接口样本不会发送到服务器。

常见使用场景

  • 把接口响应 JSON 转成 TypeScript interface
  • 根据对象数组合并字段并标记可选属性
  • 为嵌套对象生成独立类型定义
  • 整理联调样例中的字段类型

常见问题

数组里的对象字段不完全一致时会怎么处理?

工具会合并数组中出现过的字段,在部分对象缺失的字段后加问号,生成可选属性。

字段名包含短横线或空格还能生成类型吗?

可以。不能作为普通 TypeScript 标识符的字段会自动加引号,例如 "user-id": string。

JSON 转 TypeScript 会上传我的接口数据吗?

不会。解析和类型生成都在浏览器本地完成,输入内容不会因为转换操作发送到服务器。

相关工具