TypeScript

TS - interface

KANG_G1 2023. 3. 5. 14:55

인터페이스는 여러가지 타입을 갖는 프로퍼티로 이루어진

새로운 타입을 정의하는 것과 유사하다.

 

앞으로 개발해나갈 코드에 대한 부분에 대해

미리 타입을 지정한다는 의미이다.

 

1. 인터페이스의 기본 사용법

// 예제 코드

interface User {
  name: string;
  age: number;
}

// 변수에 사용하는 경우
const userInfo: User = { name: 'hi', age: 32 };

// 함수의 매개변수에 사용하는 경우
function getUser(user: User) {
  console.log(user);
}
getUser(userInfo);

 

또한 함수의 기본 구조에 대한 인터페이스도 구축이 가능하다.

// 함수 구조에 사용하는 경우
interface SumCalc {
  (a:number, b: number):number;
}

let sum: SumCalc;

sum = function (n1: number, n2: number): number {
  return n1 + n2;
}

 

2. 인터페이스의 상속

상속을 통해 다른 인터페이스의 프로퍼티를 함께 사용할 수 있다.

interface Prac1 {
  country: string;
  firstName: string;
}

interface Prac2 extends Prac1 {
  lastName: string;
}

const user: Prac2 = {
  country: 'republic of korea',
  firstName: 'kenny',
  lastName: 'florian',
}