[TypeScript] 타입 가드(Type Guard)
Language/TypeScript2024. 4. 20. 19:59[TypeScript] 타입 가드(Type Guard)

📚 타입 가드란 무엇인가요? 타입 가드란 특정 스코프 내에서 변수의 타입을 보장하는 표현식을 의미해요. 이를 활용하면 타입 안전성을 보장하면서도 유연하게 코드를 작성할 수 있어요. 타입 가드는 typeof, instanceof, 사용자 정의 타입 가드 등 여러 형태로 사용할 수 있으며, 이를 통해 런타임에 객체의 타입을 좁혀 나가는 역할을 해요. 비유를 들어보자면, 여러 종류의 과일이 섞인 바구니에서 사과만 골라내는 것과 유사해요. 타입 가드는 과일의 종류를 확인하여 사과인 경우에만 특정 작업을 수행하도록 하는 조건문과 같은 역할을 해요. 🖥️ 타입 가드의 종류 1. typeof 가드 typeof 연산자는 자바스크립트의 기본 연산자로, 변수의 타입을 문자열로 반환해요. 타입스크립트에서는 이 연산자를 사용..

[TypeScript] 조건부 타입
Language/TypeScript2024. 2. 19. 13:53[TypeScript] 조건부 타입

📚 조건부 타입이란 무엇인가요? TypeScript의 조건부 타입(Conditional Types)은 타입 시스템 내에서 조건문을 사용할 수 있게 해주는 기능이에요. 이를 통해 입력된 타입에 따라 다른 타입을 반환할 수 있으며, 이는 TypeScript의 타입 시스템을 더욱 유연하고 동적으로 만들어 줘요. 조건부 타입은 TypeScript에서 T extends U ? X : Y와 같은 형태로 표현돼요. 여기서 T가 U 타입에 할당 가능한지 여부에 따라 X 타입을 반환하거나, 그렇지 않으면 Y 타입을 반환해요. 이는 프로그래밍에서의 일반적인 조건문(if-else)과 유사한 개념이에요. 조건부 타입은 '도로의 분기점'에 비유할 수 있어요. 여러분이 운전을 하다가 도로가 두 갈래로 나뉘는 지점에 도달했다고 상..

[TypeScript] Interface와 Type의 차이
Language/TypeScript2023. 12. 21. 15:45[TypeScript] Interface와 Type의 차이

📚 Interface와 Type은 무엇인가요? 이 두 구문은 타입을 정의하는 방법으로, TypeScript 코드의 가독성과 유지보수성을 크게 향상해요. 이 둘은 데이터의 형태와 계약을 정의하는 데 사용되지만, 그 사용 목적과 방법에서 약간의 차이가 있어요. Interface: interface는 객체의 형태를 정의하고, 클래스와의 계약을 설정하는 데 주로 사용돼요. 이는 객체 지향 프로그래밍의 개념과 밀접하게 연관되어 있으며, 확장 가능한 구조를 제공해요. Type: type은 interface보다 더 다양한 타입 표현을 가능하게 해요. 이는 기본적인 객체 형태뿐만 아니라, 유니온, 인터섹션, 기본 타입 등 복잡한 타입 조합을 정의하는 데 사용돼요. interface는 건물의 청사진과 같아서, 객체의 구..

반응형
image