타입스크립트에서 인터페이스란?
객체의 타입을 정의할 때 사용하는 문법
인터페이스로 타입을 정의할 수 있는 것
- 객체의 속성과 속성 타입
- 함수의 파라미터와 반환 타입
- 함수의 스펙 (파라미터 개수와 반환값 여부 등)
- 배열과 객체를 접근하는 방식
- 클래스
객체타입 정의
let minki = { name: "민기", age: 29};
interface User {
name: string,
age: number
}
let minki: User = { name: "민기", age: 29};
// 인터페이스에 정의하지 않은 속성이 있거나 속성의 타입이 다른 경우 에러
let minki: User = { name: "민기", age: "29"};
let minki: User = { name: "민기", age: 29, hobby: "음악 감상"};
함수 파라미터의 타입 정의
interface Person {
name: string,
age: number
}
function logAge(user: Person) {
console.log(user.age);
}
let minki = { name: "민기", age: 29};
logAge(minki);
// 누락된 속성이 있다면 에러
let minki_2 = { name: "민기"};
logAge(minki_2);
함수 반환 타입 정의
interface Person {
name: string,
age: number
}
function getUser(user: Person): Person {
return user;
}
// 해당 변수가 Person 인터페이스로 추론이 된다
let minki = getUser({ name: "민기", age: 29});
'TYPESCRIPT' 카테고리의 다른 글
[Typescript] Generic(제네릭) (0) | 2024.08.01 |
---|---|
[Typescript] Enum(이넘) (0) | 2024.07.16 |
[Typescript] 인터페이스(interface)[2] (0) | 2024.07.12 |
[Typescript] 타입 종류 (0) | 2024.06.11 |
[Typescript] 타입스크립트란? (0) | 2024.06.10 |