結果は情報提供のみを目的としており、誤りを含む場合があります。重要な情報は必ずご自身で確認してください。本ツールのご利用は自己責任でお願いいたします。
このツールでできること
JSON to TypeScriptコンバーターは、サンプルのJSONオブジェクトを読み取り、それに対応するTypeScriptのインターフェースを生成します。ネストしたオブジェクトにはそれぞれ名前付きのインターフェースが作られ、各プロパティには値から推論した型(string、number、boolean、null、配列型、または別のインターフェース)が付きます。
インターフェースの名前はインターフェース名フィールドで設定します。JSONが配列の場合は最初の要素から型が決まり、type UserList = User[];のようなリスト型が追加されます。
こんなときに使えます
- TypeScriptのフロントエンドやNode.jsのサービスから呼び出すAPIのレスポンスに型を付けるとき。
- インターフェースを手書きする代わりに、実際のペイロードからデータモデルを作り始めるとき。
- Webhookやイベントのペイロードの構造をチーム向けにドキュメント化するとき。
使用例
入力
{"id": 1, "name": "Ana", "active": true, "address": {"city": "Lisbon"}, "tags": ["admin"]}
出力
interface Address {
city: string;
}
interface User {
id: number;
name: string;
active: boolean;
address: Address;
tags: string[];
}このツールについての質問
オプショナルなプロパティは検出されますか?
いいえ。型は1つのサンプルから推論されるため、そのサンプルにないプロパティはインターフェースにも含まれません。常に存在するとは限らないプロパティには?を付けてください。
nullにはどの型が付きますか?
サンプルでnullになっている値にはnull型が付きます。そのフィールドに値が入ることもある場合は、string | nullのようなユニオン型に変更してください。
値が混在する配列はどうなりますか?
要素の型はユニオン型になります(例:(string | number)[])。空の配列は推論の手がかりがないため、unknown[]になります。
このツールは無料ですか?
はい、無料でご利用いただけます。登録・メールアドレス不要。結果はこのページに表示されます。
結果はどこで確認できますか?
このページでツールを使用すると、結果がここに表示されます。メールで受け取る必要はありません。