티스토리 뷰
type alias
- 타입스크립트에서 type은 타입을 정의할 때 사용하는 키워드입니다.
- type을 사용하여 새로운 타입을 만들거나, 기존 타입을 별칭으로 지정하여 코드의 가독성과 유지보수성을 높일 수 있습니다.
- 주로 객체 같이 타입 지정이 긴 상황에서 주로 사용됩니다.
- 또한 이름을 정할 때, 맨 앞 글자를 대문자로 하는 암묵적인 규칙이 존재합니다.
type S=string | number | undefined;// 새로운 타입 정의
type Point = {
x: number;
y: number;
};
// 기존 타입을 별칭으로 지정
type Person = {
name: string;
age: number;
};
// 기존 타입들을 결합
type PersonWithPoint = Person & Point;
readonly
- readonly 키워드는 읽기 전용 속성을 정의하는 데 사용됩니다.
- const를 사용하면 변수의 값이 변하지 않지만, 객체같이 참조자료형일 경우 const의 변경 불가가 제대로 작동하디 않습니다.
- 이때 readonly 키워드를 사용하면 해당 속성이 객체 생성 이후에는 수정할 수 없다는 것을 명시할 수 있습니다.
- 이를 사용하여 코드의 불변성을 유지할 수 있습니다.
type Girlfriend = {
readonly name : string,
}
let 여친 :Girlfriend = {
name : '엠버'
}
여친.name = '유라' //readonly라서 에러남
함수에서 type alias 사용하기
- 위에서 변수처럼 함수도 인자와 리턴 값의 타입을 외부에서 지정하는 것이 가능합니다.
- 단, 이때 함수를 변수에 할당하는 함수 표현식을 사용해야 합니다.
type NumOut = (x : number, y : number ) => number //number타입 2개를 인자로 받고,리턴값도 number타입이다.
let ABC :NumOut = function(x,y){
return x + y
}
- 맨약 객체 안의 함수에도 타입지정하고 싶다면 다음과 같이 작성하면 됩니다.
type func = {
plusOne : ( x :number ) => number,
changeName : () => void
}
'개발 > 타입스크립트' 카테고리의 다른 글
타입스크립트로 HTML 변경과 조작할 때 주의점 (0) | 2023.04.20 |
---|---|
Literal Types (0) | 2023.04.20 |
Narrowing, Assertion (0) | 2023.04.19 |
타입스크립트 선언 (0) | 2023.04.12 |
타입스크립트 개요 (0) | 2023.04.12 |
댓글