[typescript] 타입의 확장과 구현
타입스크립트(TypeScript)는 정적 타입 체크와 타입 추론을 통해 JavaScript 코드의 안정성을 높여주는 현대적인 언어입니다. 이 언어에서는 기본 타입을 확장하거나 인터페이스를 구현하는 방법에 대해 알아보겠습니다.
기본 타입의 확장
타입스크립트에서 기본 타입을 확장하여 새로운 타입을 정의할 수 있습니다. 예를 들어, number
타입에 새로운 속성을 추가하고 싶을 때, 인터페이스를 사용하여 확장할 수 있습니다.
interface ExtendedNumber extends number {
format: (val: number) => string;
}
const myNumber: ExtendedNumber = 10;
myNumber.format = (val) => `$${val.toFixed(2)}`;
console.log(myNumber.format(myNumber)); // 출력: $10.00
위 예제에서 ExtendedNumber
인터페이스는 number
타입을 확장하고 format
이라는 새로운 메서드를 추가합니다.
인터페이스의 구현
인터페이스를 구현하는 것은 클래스나 객체가 해당 인터페이스의 요구 사항을 충족시키도록 하는 것을 의미합니다.
interface Printable {
print: () => void;
}
class Document implements Printable {
print() {
console.log('Printing document...');
}
}
function printDocument(doc: Printable) {
doc.print();
}
const myDoc = new Document();
printDocument(myDoc); // 출력: Printing document...
위 예제에서 Document
클래스는 Printable
인터페이스를 구현하고, printDocument
함수는 Printable
을 구현한 객체를 인수로 받아 호출합니다.
타입스크립트(TypeScript)를 사용하면 기본 타입을 확장하거나 인터페이스를 구현하여 코드의 안정성과 유지보수성을 향상시킬 수 있습니다.
마치며
이번 포스트에서는 타입스크립트에서의 타입 확장과 인터페이스 구현에 대해 살펴보았습니다. 이러한 기능들을 적절히 활용하면 코드의 가독성과 유지보수성을 높일 수 있습니다.
참고 자료: 타입스크립트 핸드북