[typescript] 타입스크립트에서의 클래스 타입 변환 방식
타입스크립트에서는 클래스의 타입을 변환하는 몇 가지 방법이 있습니다. 이 포스트에서는 Type Assertion
과 Type Casting
의 차이점 및 사용법에 대해 알아보겠습니다.
1. Type Assertion (타입 단언)
Type Assertion
은 개발자가 컴파일러에게 해당 값의 타입을 확신시킬 때 사용됩니다. 이 방법은 값의 타입을 컴파일러에게 강제로 알려주는 역할을 합니다.
let someValue: any = "hello world";
let strLength: number = (someValue as string).length;
위 예제에서 as
키워드를 사용하여 someValue
를 string
타입으로 변환한 후 length
프로퍼티에 접근하고 있습니다.
2. Type Casting (타입 캐스팅)
Type Casting
은 런타임에서의 객체 타입을 변환하는 것을 의미합니다. 이 방법은 JavaScript 코드와의 호환성을 유지하면서 특정 타입으로 값을 변환할 때 주로 사용됩니다.
let someValue: any = "hello world";
let strLength: number = (<string>someValue).length;
< >
기호를 사용하여 someValue
를 string
타입으로 변환하는 것을 볼 수 있습니다.
결론
Type Assertion
과 Type Casting
은 모두 타입스크립트에서 값의 타입을 변환하는 방법이지만, 사용 시기와 목적에 따라 다르게 적용되어야 합니다. Type Assertion
은 컴파일 시점에 타입을 변환하고, Type Casting
은 런타임에서의 타입 변환에 주로 사용됩니다.
더 많은 정보는 타입스크립트 공식 문서를 참고하시기 바랍니다.