[TS] 인터페이스 확장
TIL
인터페이스 확장이란 하나의 인터페이스를 다른 인터페이스들이 상속받아 중복된 프로퍼티를 정의하지 않도록 도와주는 문법이다. [TS] 인터페이스인터페이스(Interface)란 타입 별칭과 동일하게 타입에 이름을 지어주는 또 다른 문법으로,상속, 합침 등의 특수한 기능을 제공하기 때문에 객체의 구조를 정의하는 데 특화되어 있다.// 타입 별칭tdevmark.tistory.com interface 타입이름 extends 확장_할_타입이름이렇게 extends 뒤에 확장할 타입의 이름을 정의하면 해당 타입에 정의된 모든 프로퍼티를 다 가지고 오게 된다.interface Animal { name: string; color: string;}interface Dog extends Animal { isBark: bo..
[TS] 인터페이스
TIL
인터페이스(Interface)란 타입 별칭과 동일하게 타입에 이름을 지어주는 또 다른 문법으로,상속, 합침 등의 특수한 기능을 제공하기 때문에 객체의 구조를 정의하는 데 특화되어 있다.// 타입 별칭type A = { a: string; b: number;};// 인터페이스interface A { a: string; b: number;};타입 별칭과 인터페이스는 유사해 보이지만, 인터페이스는 객체 타입을 정의하는 데 더 특화된 기능을 제공한다. 인터페이스의 기본 기능선택적 프로퍼티와 읽기 전용 프로퍼티타입 별칭과 마찬가지로 선택적 프로퍼티와 읽기 전용 프로퍼티를 정의할 수 있다.선택적 프로퍼티프로퍼티에 ?를 붙여 선택적 프로퍼티로 만들면 생략 가능하다.interface Person { name:..
[TS] 사용자 정의 타입 가드
TIL
사용자 정의 타입 가드란 참 또는 거짓을 반환하는 함수를 이용해 우리 입맛대로 타입 가드를 만들 수 있도록 도와주는 타입스크립트의 문법이다. type Dog = { name: string; isBark: boolean;};type Cat = { name: string; isScratch: boolean;};type Animal = Dog | Cat;Dog와 Cat 두 개의 타입을 정의하고, 두 타입의 유니온 타입인 Animal 타입을 정의했다. function warning(animal: Animal) { if ("isBark" in animal) { console.log(animal.isBark ? "짖습니다" : "안짖어요"); } else if ("isScratch" in anima..