[TypeScript] 타입 별칭 (Type Alias)
·
TypeScript
타입 별칭 (Type Alias)  - 특정 타입/인터페이스 등을 참조할 수 있는 타입 변수  - 재선언 불가능type userName = string;type userName = number; // 에러 발생  - 활용     · 해당 타입이 어떤 역할을 하는지 이름을 짓고 싶을 때     · 여러 번 반복되는 타입을 변수화해서 쉽게 표기하고 싶을 때 # 선언하기// 기본 타입 별칭type UserName = string;// 객체 타입 별칭type User = {    name: string;    age: number;}// 유니언 타입 별칭type Message = string | number;type Status = "success" | "error" | "loading";// 제네릭 활용typ..
[TypeScript] 유니언 타입 & 인터섹션 타입
·
TypeScript
유니언 타입 (Union Type)  - 여러 개의 타입 중 하나를 가질 수 있도록 허용하는 타입  - `|` 기호를 사용하여 여러 타입을 결합함// string 또는 number 값만 할당할 수 있음let value: string | number;value = "hello"; value = 42; value = true; // 에러// string 또는 number 인자만 받을 수 있음function format(value: string | number) { ...} # 타입을 구분할 때 사용하는 연산자  1) in     - 객체에 해당 속성이 있으면 true, 아니면 false를 반환하는 연산자// person 객체에 'age'라는 속성이 존재하면 true, 아니면 false를 반환함..
[TypeScript] 인터페이스 (Interface)
·
TypeScript
인터페이스 (Interface)  - 객체의 구조를 정의하는 문법  - 객체의 형태를 사전에 정의함으로써, 예상치 못한 에러를 방지할 수 있음 # 객체 구조 정의interface Person { name: string; age?: number; // ?를 붙이면 옵션 속성이 됨}--------------------// 정상 작동const person: Person = { name: "John", age: 30};// gender 속성은 정의되어 있지 않기 때문에 에러 발생const person: Person = { name: "John", age: 30, gender: 'M'}; # 함수 파라미터 타입 정의interface Person { name: string..
[TypeScript] 기본 타입
·
TypeScript
기본 타입  - stringlet name: string = 'yang';  - numberlet age: number = 10;  - booleanlet isLogin: boolean = false;  - objectlet dog: object = { name: 'yang', age: 10 }  - Array     : 기본 자바스크립트와 달리 배열 요소의 타입을 지정할 수 있음// --- 단일 타입 배열// 문자열 배열let a: string[] = ['A', 'B', 'C'];// 숫자 배열let b: number[] = [1, 2, 3];// --- 혼합 타입 배열let c: (number | string | boolean)[] = [1, "Two", true];  - tuple     : 고정된..
[TypeScript] 개요
·
TypeScript
TypeScript  - JavaScript에 Type을 부여한 언어  - 목표 : JavaScript에 정적 타입을 추가하여, 더 안정적이고 유지보수가 용이한 코드를 작성하도록 돕는 것  - 변수, 함수의 매개변수/반환값에 타입을 지정할 수 있음     → 컴파일 시 타입 오류를 미리 확인할 수 있음   - .ts 확장자를 가진 파일로 작성됨     → 컴파일 시 JavaScript로 변환되어 브라우저나 Node.js 환경에서 실행할 수 있음  변수 선언 및 초기화하기# 타입 명시하기  - Type Annotation (타입 주석)이라고 부름let a: any // 모든 타입 가능let b: number | undefined // number 타입 또는 undefined 타입 가능let c: "open..