교차타입
-
[TypeScript] 고급타입 - 2TypeScript 2022. 9. 22. 00:26
타입 별칭(Type Aliases) 타입 별칭은 새로운 타입을 만드는게 아닌 그 타입을 나타내는 새로운 이름을 만드는 것 입니다. type Name = string; type NameResolver = () => string; type NameOrResolver = Name | NameResolver; function getName(n: NameOrResolver): Name { if (typeof n === "string") { return n; } else { return n(); } } 프로퍼티 내에 자기 자신을 참조할 수 있습니다. type Tree = { value: T; left: Tree; right: Tree; } 타입별칭은 제네릭이 될 수 있습니다. type Container = { va..
-
[TypeScript] 유니언과 교차타입TypeScript 2022. 9. 10. 17:15
유니언 타입(Union Types) 유니언 타입은 여러 타입 중 하나가 될 수 있는 값을 의미합니다. 세로 막대(|) 로 각 타입을 구분합니다. number | string | boolean 은 타입이 number 또는 string 또는 boolean 이 될 수 있음을 뜻합니다. 공통 필드를 갖는 유니언(Unions with common Fields) // @errors: 2339 interface Bird { fly(): void; layEggs(): void; } interface Fish { swim(): void; layEggs(): void; } declare function getSmallPet(): Fish | Bird; let pet = getSmallPet(); pet.layEggs();..