👋
TypeScriptの勉強(型結合)
AWS CDKの為のTypeScriptの勉強(型結合)
はじめに
インフラエンジニアの私がAWS CDKの為の勉強の為の備忘録です。型結合について勉強しました。
TypeScript の型結合について: Union と Intersection
TypeScript は、JavaScript のスーパーセットとして、型の強制と型の安全性をもたらします。TypeScript の型システムを利用することで、より安全で予測可能なコードを書くことができます。この記事では、TypeScript でよく使用される Union
と Intersection
について、勉強しました。
1. Union Types (和集合型): これかそれ
Union
は、変数が取りうる複数の型の中から1つの型を持つことを示す方法です。
type Animal = 'cat' | 'dog' | 'bird';
let myPet: Animal;
myPet = 'cat'; // OK
myPet = 'fish'; // エラー! 'fish'はAnimalの型には含まれていません
この例では、myPet
は 'cat'
, 'dog'
, 'bird'
のいずれかの値しか取ることができません。
2. Intersection Types (共通集合型): これとそれ
Intersection
は、2つ以上の型を組み合わせて、すべての型の特性を持つ新しい型を作成する方法です。
type HasName = {
name: string;
};
type HasAge = {
age: number;
};
type Person = HasName & HasAge;
const tom: Person = {
name: 'Tom',
age: 25
};
この例では、Person
は HasName
と HasAge
の両方の特性を持っています。
まとめ
-
Union (
|
): 複数の型の中から1つの型を選ぶ。"これかそれ" のような考え方です。 -
Intersection (
&
): 複数の型を結合して1つの新しい型を作る。"これとそれ" のような考え方です。
参考
実践 AWS CDK - TypeScript でインフラもアプリも! - Silverworks - BOOTH
Discussion