🔷 JSON→TypeScript

JSONを貼り付けると、TypeScriptの型定義(interface / type)を自動生成します。ネストしたオブジェクトは別の型に分割し、配列内で欠けているキーは任意プロパティ(?)として統合します。すべてブラウザ内で処理され、サーバーには送信されません。

📘 使い方

  1. 「入力 JSON」に型を生成したいJSON文字列を貼り付けます。入力するとリアルタイムで生成されます。
  2. 「ルート型名」で最上位の型の名前を指定します(既定は Root)。
  3. 「interface」か「type」を選び、必要に応じて「readonly」「セミコロン」を切り替えます。
  4. ネストしたオブジェクトはキー名をもとにした別の型として自動的に分割されます。
  5. 結果は「コピー」または「ダウンロード(.ts)」で保存できます。構文エラーは入力欄の下に表示されます。

❓ よくある質問

ネストしたオブジェクトはどう扱われますか?

オブジェクトの中のオブジェクトは、キー名をPascalCaseにした名前の別インターフェイスとして切り出します。構造がまったく同じ型は1つにまとめ、名前が重複して構造が異なる場合は末尾に数字を付けて区別します。

配列の要素ごとにキーが違う場合は?

オブジェクトの配列は、全要素のキーを統合して1つの型にまとめます。一部の要素にしか存在しないキーは任意プロパティ(key?: 型)として出力します。型が混在する配列は (A | B)[] のように共用体の配列になります。

null や空の配列はどうなりますか?

null の値は null 型として扱い、他の値と統合される場合は共用体(例:string | null)になります。空の配列は要素の型を推論できないため unknown[] として出力します。

入力したJSONはサーバーに送信されますか?

いいえ。すべての処理はお使いのブラウザ内で完結します。入力内容がサーバーへアップロードされることはありません。