WEB/TypeScript

[TypeScript] 타입스크립트 타입 명시, 인터페이스를 타입으로 사용하기

자바칩 프라푸치노 2021. 7. 29. 19:14

참고: 땅콩코딩

1. 타입명시 syntax

변수에 타입 명시하기

let studentId:number = 12345;
let studentName:string = "hyeonju";
let age:number = 21;
let gender:string= "woman";
let subject:string ="fashion";
let courseCompleted:boolean = false;

 

 

 

function에 리턴값 지정

 

타입스크립트에게 더욱 더 정확하고 자세한 정보를 주는 것이 좋다.

function의 반환값을 지정해줄 수 있다.

아무것도 리턴하지 않는다면 void를 주면 된다.

지금은 객체를 리턴할 것이므로 object를 썼다.

 

하지만 위에서 말했듯 자세한 정보를 주는 것이 좋다.

반환값과 유사한 형태로 객체를 만들어 리턴타입에 넣어준다.

 

 

 

 

 

 

2. 인터페이스로 타입명시

interface Student{
    studentId: Number;
    studentName: String;
    age?: Number;
    gender: String;
    subject: String;
    courseCompleted: Boolean;
}

 

완성된 인터페이스는 타입으로 사용가능

인터페이스 구조 그대로를 리턴해야함

 

 

리턴값으로 인터페이스 설정

그런데 만약에 저거를 모두 리턴하고 싶지 않다면?

 

age뒤에 붙은 것 처럼 ?를 넣어준다.

(optional property)

age가 반환값에 없어도 컴파일이 된다.

 

 

 

파라미터로 인터페이스 설정

 

파라미터로도 타입을 인터페이스로 넣을 수 있다

 

코드의 재사용성이 좋다.

 

 

 

 

인터페이스내에서 메소드 정의하기

interface Student{
    studentId: Number;
    studentName: String;
    age?: Number;
    gender: String;
    subject: String;
    courseCompleted: Boolean;
    addComment?: (comment:string)=>string;
}

 

 

 

3. Read only속성

읽기 전용 속성

객체가 생성될떄 할당된 값은 바꿀수없다.

728x90