JSON 转 TypeScript
JSON 转 TypeScript 在浏览器本地将 JSON 样本转换为 TypeScript interface 与 type,支持可选字段、联合/null/Date 推断、根类型名和 .ts 复制下载。
JSON
粘贴有代表性的 JSON 样本
根类型名
可选设置根类型名,例如 ApiResponse。
TypeScript
在右侧查看 TypeScript:对象生成 interface,数组或原始值生成 type。
快速开始
常见使用场景
把真实 API 响应快速整理成前端页面、SDK 客户端或接口联调时可直接使用的 TypeScript 类型。
在正式定义接口契约前,先用 JSON 样本观察可选字段、null 与联合类型的推断结果。
把 mock JSON 数据快速转换为测试夹具、Storybook 示例或原型阶段可用的类型定义。
当后端响应结构调整时,用最新 JSON 样本快速检查 User、Meta 等嵌套声明是否需要同步更新。
使用建议
类型推断边界
限制与兼容性
隐私与安全
常见问题
对象根节点会生成 interface;数组和原始值根节点会生成 type。顶层对象数组会生成类似 type Root = RootItem[] 的根类型,并单独声明数组项结构。
空数组和空对象缺少足够样本,无法推断更精确结构。生成器会先使用 unknown[] 或 Record<string, unknown>,直到你提供更有代表性的示例值。
如果你输入的名称本身已经是合法的 TypeScript 标识符,它会被原样保留,例如 ApiResponse。非法名称会在生成前被规范化为稳定的 PascalCase 标识符。
当前生成器会根据属性路径规范化嵌套名称,并在命名冲突时做稳定区分。因此新输出更倾向使用 User、Meta 或 FooBarClass 之类的名称,而不是始终带上根类型名前缀。
当前输出契约故意只返回纯声明文本,不自动附带 export。这样能保持结果中性,你可以按项目风格自行添加 export。