粘贴JSON数据,一键生成TypeScript接口定义,支持嵌套和可选属性。纯本地运行,数据不上传,保护隐私。
📋 JSON类型与TypeScript类型对照表
| JSON类型 | TypeScript类型 | 说明 |
|---|---|---|
| string | string | 字符串 |
| number | number | 数值 |
| boolean | boolean | 布尔值 |
| array | Type[] | 数组 |
| object | interface | 接口 |
TypeScript是JavaScript的超集,添加了静态类型系统,在大型前端项目中广泛使用。处理JSON数据时,定义对应的TypeScript接口(interface)或类型别名是最佳实践,可以获得代码提示和类型检查。手动写接口定义繁琐且容易出错,JSON转TypeScript工具可以自动生成类型定义。
📋 JSON转TypeScript转换公式
转换公式:string -> string,number -> number,boolean -> boolean,array -> Type[],object -> interface嵌套接口,null -> Type | null。自动生成interface定义,字段名保持原样。
前端开发对接后端API时,需要定义返回数据的类型,直接用接口返回的JSON生成最方便。写React/Vue组件的Props类型时,可以用示例数据生成类型定义。重构JavaScript项目为TypeScript时,批量生成数据结构的类型定义。
将JSON数据粘贴到输入框,设置接口名称、是否导出、是否只读等选项,点击「转换」按钮即可生成TypeScript代码。生成的接口定义可以直接复制到.ts文件中使用。对于数组类型,工具会自动推断数组元素的类型;对于嵌套对象,会生成对应的子接口。
定义对象结构用interface更符合TS习惯,支持声明合并;联合类型、基本类型别名用type。本工具默认生成interface,可根据项目风格调整。
name加问号加冒号加string表示该属性可以不存在。区别于name冒号string或undefined,可选属性允许对象完全没有这个键。
工具会取所有元素类型的并集生成联合类型。实际项目中建议保证数组元素类型统一,避免类型过于宽泛导致失去类型保护意义。
readonly标记的属性只能在创建时赋值,之后不能修改,常用于配置对象和不可变数据,提供编译时的只读保护,运行时不生效。
当JSON中某个字段在不同记录中类型不同(如有时是string有时是number),工具会自动生成联合类型(如 string | number),确保类型安全。