반응형
type Score = 'A'|'B'|'C'|'F';
interface User {
name : string,
age : number,
gender? : string, // ? = 선택적
[grade:number] : Score, // 학년 다양하게 넣을수 있음 또한 타입 위에서 지정한것만 사용가능
readonly birthDate : number // 읽기 전용 한번 넣은 값 수정 불가능
}
let user : User = {
name : 'user1',
age : 30,
gender : 'female',
birthDate : 1995
}
console.log(user)
------------------
//출력값
[LOG]: { "name": "user1", "age": 30, "gender": "female", "birthDate": 1995 }
인터페이스 함수에도 정의가능
// 두개의 숫자를 받아서 더한 값 반환 함수
interface Add {
(num1:number, num2:number) : number;
};
const add : Add = function(x,y){
return x + y;
}
console.log(add(1,2)) // 3
// 나이를 받아서 성인인지 아닌지 리턴하는 함수 만들기
interface Adult {
(age:number):Boolean;
};
const isAdult : Adult = (age) => {
return age > 19
};
isAdult(20); //true
인터페이스로 클래스 정의 가능
//implements 사용
//extends 확장 사용 여러개 가능
반응형
'IT > TypeScript' 카테고리의 다른 글
타입스크립트 - 기본 타입 (0) | 2025.01.22 |
---|