全てのコンテンツ

TypeScript

【TypeScript】inferとは何ですか?

例えば、同じ値があっても、用途が違うために型が異なっている場合があったとします。 こちらの例では、 Person オブジェクトの job は string 型ですが、 Questionnaire の job は boolean…

続きを読む
2021年08月07日1 分
TypeScript

【TypeScript】コンディショナルタイプ(Conditional Types)とは何ですか?

社会人の時に使用する型と、学生の時に使用する型があったとします。 この型を社会人の時と学生の時で使い分ける時、どうすればいいのでしょうか。 このような時に使用するのが、コンディショナルタイプ(Conditional Types…

続きを読む
2021年08月06日1 分
TypeScript

【TypeScript】Omitとは何ですか?

前回は、ある型から特定のプロパティを取り出したい場合に使用する、 Pick を紹介しました。 Pick とは反対に、ある型から特定のプロパティを除外したい場合は、どうすればいいのでしょうか。 Profile の型があったとします。 こちらの型から address…

続きを読む
2021年08月05日1 分
TypeScript

【TypeScript】Pickとは何ですか?

Profile の型があったとします。 こちらの型から name と age のみ使用する、 profile オブジェクトを作成しました。 profile オブジェクトには、 address…

続きを読む
2021年08月04日1 分
TypeScript

【TypeScript】readonlyとは何ですか?

例えば、次のオブジェクトがあるとします。 name を『田中』から『佐藤』へ変更してみます。 console.log で確認すると、 name が『佐藤』になりました。 今回のように、勝手に書き換えたくないデータがある場合、readonly…

続きを読む
2021年08月03日1 分
TypeScript

【TypeScript】型推論を基にして、関数や変数などの型を指定する方法

例えば、次のオブジェクトがあるとします。 profile を見てみると、 型指定しなくても、型推論をしてくれています。 では、型推論で生成された型を、他に使用するには、どうすればいいでしょうか。 型を他に使用するには、型を指定するところに、『typeof…

続きを読む
2021年08月02日1 分
TypeScript

【TypeScript】マップド型(Mapped Types)とは何ですか?

Profile オブジェクトの型があったとします。 こちらの型を使いたいが、age は必要ない場合、パーシャル型を使用しました。 同様に、特定の型を他の型に作り替えたい場合、マップド型(Mapped Types)を使います。 書き方は、新しい型を作り、中に、『 P in…

続きを読む
2021年08月01日2 分
TypeScript

【TypeScript】リクワイヤド型とは何ですか?

前回は、パーシャル型(Partial Type)を紹介しました。 パーシャル型とは反対に、オプションの項目を、ある時は必須にしたい場合、どうすればいいでしょうか。 tanaka というオブジェクトがあったとします。 age はオプションであるため、 age…

続きを読む
2021年07月31日2 分
TypeScript

【TypeScript】パーシャル型とは何ですか?

name と age が必要な Profile の型を作成しました。 tanaka というオブジェクトを作成してみます。 次に、 sato というオブジェクトを作成してみます。 佐藤さんの、 age がわからなかったので、 age…

続きを読む
2021年07月30日1 分
TypeScript

【TypeScript】インデックスシグネチャとは何ですか?

profile というオブジェクトがあったとします。 profile オブジェクトに、 name と age を入れてみます。 すると、 profile.name と profile.age にエラーが発生し、『プロパティ 'name…

続きを読む
2021年07月29日2 分