JSON → TypeScript型
JSONオブジェクトを解析してTypeScriptのinterface定義を自動生成します。ネストされたオブジェクト・配列・null値に対応。APIレスポンスの型定義作成に最適です。
JSON → TypeScript型について
TypeScriptの型定義は本来、APIの仕様書(OpenAPIなど)から生成するのが理想ですが、仕様書が整備されていない開発現場では、実際に返ってきたJSONレスポンスの実物から型を推測して書き起こす作業が頻繁に発生します。手作業でネストしたオブジェクトの型を書き下すのは時間がかかり、ミスも起きやすい作業です。
ただしこの方式には限界もあり、1つのサンプルJSONだけでは「ある時はnumber、ある時はnullが入る」といったフィールドのユニオン型までは推測できません。あくまで叩き台として型定義を生成し、実際のAPI仕様と照らし合わせて調整することをおすすめします。
主な使い方
- 1REST APIのレスポンスJSONからTypeScriptの型定義を自動生成する
- 2外部サービスのWebhookペイロードJSONをTypeScript化してタイプセーフに扱う
- 3設定ファイルのJSONスキーマからTypeScript interfaceを作成する
- 4フロントエンド開発でモックデータのJSONから型を素早く生成する
よくある質問
Q. ネストされたオブジェクトも正しく型定義されますか?
A. はい。ネストされたオブジェクトは自動的に子interfaceとして生成されます。配列のネストにも対応しています。
Q. null値やundefinedはどのように型定義されますか?
A. 値がnullのフィールドは、オプショナルなnull型(例: deletedAt?: null)として生成されます。実際の型はJSONから推測できないため、必要に応じて「string | null」などに書き換えてください。JSONにはundefinedが存在しないため、undefinedは出力されません。
Q. 生成した型定義をそのままTypeScriptファイルで使えますか?
A. はい。生成されたinterface定義はそのままTypeScript/TSXファイルにコピー&ペーストして利用できます。
関連ツール
- JSON整形・検証JSONを見やすくインデント整形し、構文エラーの箇所をすぐに検出します。1行への圧縮(ミニファイ)にも対応し、APIレスポンスや設定ファイルの確認に便利。ブラウザ内で完結し、データは外部に送信されません。
- JSON差分2つのJSONを構造的に比較し、追加・削除・変更された箇所をキー単位で表示します。インデントや改行など整形の違いに左右されず、APIレスポンスや設定ファイルの差分確認に便利。ブラウザ内で完結します。
- JWT エンコード・署名ヘッダー・ペイロード・シークレットキーを入力してJWTトークンを生成します。HS256・HS384・HS512のHMAC署名に対応し、APIのテストや認証の動作確認に便利。ブラウザ内で完結し、鍵は送信されません。
- ハッシュ生成テキストからSHA-1・SHA-256・SHA-384・SHA-512のハッシュ値を生成します。チェックサムの照合や改ざん検知、キャッシュキーの作成などに便利。Web Crypto APIでブラウザ内で計算し、データは送信されません。
- UUID生成UUID v4をワンクリックで生成します。最大20件までの一括生成にも対応し、データベースの主キーやテストデータの作成に便利。暗号学的に安全な乱数(crypto.randomUUID)を使い、ブラウザ内で完結します。
- パスワード生成大文字・小文字・数字・記号を組み合わせた安全なランダムパスワードを生成します。長さや使う文字種を指定でき、強度メーターで安全性も確認可能。暗号学的に安全な乱数を使い、ブラウザ内で完結します。