
똑같은 코드를 여러번 정의하는 것이 힘들떄 사용
interface 다음에 첫글자 대문자로 이름을 정하고
중괄호 안에 객체 타입을 정의할 때와 똑같이 적어주면된다.
변수 뒤에 : 을 쓰고 인터페이스 이름을 적어주면
인터페이스 형태에 해당하는 객체 타입을 지정할 수 있다.
인터페이스는 상속이 가능하다.
Product타입을 상속한 다음에 sizes 프로퍼티를 추가했다.ClothingProduct는 Product타입을 상속받았기 때문에
즉, 의류상품은 상품의 일종이기때문에 Product타입에 그대로 사용할 수 있다.
인터페이스로 함수의 타입도 정의할 수 있다.
괄호 안에 파라미터들을 적고 return타입을 정의하면 된다.
interface를 사용하는 방법은 interface를 쓴 다음, 객체 타입처럼 만들면 된다.
interface ClothingProduct extends Product { sizes: Size[]; } const product1: ClothingProduct = { id: 'c001', name: '코드잇 블랙 후드 집업', price: 129000, membersOnly: true, sizes: [Size.M, Size.L], }; const product2: Product = { id: 'd001', name: '코드잇 텀블러', price: 25000, };