nameageが必要なProfileの型を作成しました。

type Profile = {
  name: string
  age: number
}

tanakaというオブジェクトを作成してみます。

let tanaka: Profile = { name: "田中", age: 23 }

次に、satoというオブジェクトを作成してみます。

佐藤さんの、ageがわからなかったので、ageを削除しました。

let sato: Profile = { name: "佐藤" }

すると、

image2

エラーが発生し、『プロパティ 'age' は型 '{ name: string; }' にありませんが、型 'Profile' では必須です。』と指摘されました。

このような時に使うのが、パーシャル型(Partial Type)です。

パーシャル型は、必須のプロパティをオプションのプロパティにしてくれます。

書き方は、オプションにしたい型を『<>』で閉じ、<>の前に、『Partial』と書きます。

let sato: Partial<Profile> = { name: "佐藤" }

すると、

image3

image4

型の後に『?』がついてオプションになりました。

ブログ一覧