跳到主要內容

JSON 轉 TypeScript

JSON 轉 TypeScript

將 JSON 範例轉換為 TypeScript 介面與型別別名,自動處理物件陣列欄位合併、可選欄位與 null 聯集推斷,並為空陣列和空物件產生合適的型別宣告。適用於 API 回應建模、前端型別初始化與資料結構整理。

JSON 轉 TypeScript

快速開始

1
將有效的 JSON 範例貼到左側編輯器。
2
可選:在產生前設定自訂根型別名,例如 ApiResponse。
3
在右側查看產生結果。物件根節點會產生 interface;陣列與原始值根節點會產生 type。
4
使用複製或下載按鈕,把產生的 .ts 輸出帶回你的專案。

常見使用情境

把真實 API 回應快速整理成前端頁面、SDK 用戶端或整合測試可用的 TypeScript 起始模型。

在正式定義 API 契約前,先用混合物件陣列觀察可選欄位與聯集型別的推斷結果。

把 mock JSON 資料快速轉成測試夾具、Storybook 範例或原型階段可用的型別定義。

當後端回應結構變動時,檢查 User、Meta 等巢狀宣告是否跟著樣本一起更新。

使用建議

盡量提供具代表性的 JSON 範例。產生器只會根據你貼上的值做推斷,沒有出現的情況不會出現在輸出中。
空陣列會產生成 unknown[];空物件會產生成擴充 Record<string, unknown> 的 interface,直到你提供更完整的樣本。
巢狀宣告會依屬性名稱做正規化,因此新輸出更常出現 User、Meta 這類名稱,而不是舊版的根名前綴形式。
只有在 JSON 合法時才會產生結果。若解析失敗,編輯器會顯示錯誤的行號與列號。
合法的自訂根型別名會原樣保留;非法名稱會被正規化為合法的 PascalCase TypeScript 識別字。

限制與相容性

此工具是依樣本資料推斷型別,而不是依正式 schema。樣本中沒出現的欄位無法自動猜出。
輸入必須是嚴格 JSON。註解、尾隨逗號與其它 JavaScript 風格語法都會被拒絕。
目前產生結果不會自動附帶 export 宣告;若你的專案需要導出,請在產生後自行補上。
輸出僅為靜態 TypeScript 宣告,不會產生執行期驗證器、解析器或序列化邏輯。

隱私與安全

所有處理均在您的瀏覽器內完成,資料不會離開您的裝置

常見問題

6

可繼續使用這些相關工具,完成後續步驟。