什么是JSON 转 TypeScript 类型?
JSON 转 TypeScript 工具读取一段 JSON 示例,推导出对应的 interface 定义,包括嵌套对象、数组元素类型与联合类型。适合把接口返回快速固化成类型,推导过程在浏览器内完成。
怎么用JSON 转 TypeScript 类型?
- 1粘贴一段有代表性的 JSON 响应,字段越完整推导越准。
- 2填写根类型名称,默认是 Root。
- 3查看生成的 interface,嵌套对象会被提取为独立类型。
- 4把结果复制进项目,再根据后端契约手动标注可选字段。
在代码里怎么实现?
一次性操作用上面的工具,重复性工作建议固化到脚本或项目里。
生成结果示例
interface Root {
id: number;
name: string;
tags: string[];
owner: RootOwner;
}
interface RootOwner {
id: number;
email: string;
}常见错误与排查
| 现象 | 成因 | 修复 |
|---|---|---|
| 数组元素被推导成 unknown[] | 示例 JSON 里该数组是空数组,没有可推导的元素类型。 | 换一份含至少一个元素的示例,或手动补全元素类型。 |
| null 字段被推导成 null 类型 | 示例中该字段恰好为 null,无法判断真实类型。 | 按后端契约改成 string | null 之类的联合类型。 |
常见问题
推导出来的类型能直接用于生产代码吗?+
可以作为起点,但需要人工复核。单个 JSON 示例无法表达可选字段、联合类型与 null 的真实含义,建议对照接口文档补全 ? 与联合类型,长期方案是从 OpenAPI 或 GraphQL Schema 生成类型。
字段名不是合法标识符怎么办?+
含短横线、空格或以数字开头的键会被输出为带引号的属性名(如 "user-id": string),这在 TypeScript 中是合法的,访问时需要用方括号语法。
相关工具
全部工具JSON 转 YAML
JSON to YAML Converter
把 JSON 转成 YAML,保留嵌套层级
YAML 转 JSON
YAML to JSON Converter
把 YAML 转成 JSON,支持多文档
JSON 转 CSV
JSON to CSV Converter
JSON 对象数组转 CSV,嵌套字段自动扁平化
CSV 转 JSON
CSV to JSON Converter
CSV 转 JSON,自动识别表头与分隔符
JSON 转 Go 结构体
JSON to Go Struct
JSON 转 Go 结构体,自动补 json tag
JSON 转 Python 类型
JSON to Python Dataclass
JSON 转 Python dataclass 或 Pydantic 模型