JSON → TypeScript インターフェイス
開発
JSON サンプル(API レスポンス、設定、フィクスチャ)を貼り付けると、すぐ使える TypeScript インターフェイスが得られます。ネストしたオブジェクトは親キー名(PascalCase)の別インターフェイスに、配列は要素型を推論、プリミティブはそのまま。マージモードは配列の全要素を巡回してユニオン型を作り、最初の要素モードは 0 番目だけ見て高速に推論します。
—
TypeScript
export interface Post {
id: number;
title: string;
tags: string[];
}
export interface Address {
city: string;
zip: string;
}
export interface Root {
id: number;
name: string;
active: boolean;
joinedAt: string;
roles: string[];
address: Address;
posts: Post[];
}使い方
- JSON サンプルを貼り付け。
- ルート型名を設定し、interface / type を選択。
- 配列の扱いを選択 — マージ(安全)または最初の要素のみ(高速)。
- 生成された TypeScript をコピー。
よくある質問
- users 配列なのに User インターフェイスが出るのは?
- 複数形に見えるキー(users, posts, tags など)は単数化してネスト型名にします。'posts': [...] は Post インターフェイスを生成し Post[] として使われます。
- マージと最初の要素の違いは?
- マージは配列の全要素を巡回してフィールド型をユニオンにまとめ、一部要素にしかないフィールドは 'field?' になります。最初の要素は 0 番目だけ見るので高速ですがユニオン・オプショナルを見逃すことがあります。
- 日付は Date として推論されますか?
- いいえ — コンパイル時には日付文字列と普通の文字列を区別できないので 'string' のままにします。strict モードでも安全。
- null は?
- null は独立した型になります。マージモードである要素に null があれば 'field: string | null' のように生成されます。
関連ツール
JWT デコーダー
JWT のヘッダー・クレーム・有効期限を即座に確認。
開発00
UUID ジェネレーター
ランダムなバージョン 4 UUID をまとめて生成し、コピー。
開発00
ハッシュ生成 (SHA)
テキストから SHA-1・SHA-256・SHA-384・SHA-512 ハッシュを生成。
開発00
URL エンコーダー / デコーダー
URL 用にテキストをパーセントエンコード、または URL をデコード。
開発00
Base64 エンコーダー / デコーダー
テキストを Base64 にエンコード、または Base64 をテキストにデコード。
開発00
JSON フォーマッター & バリデーター
ブラウザで JSON を整形・並べ替え・圧縮・検証できます。
開発00