기본 타입 선언 예제
숫자, 문자열, 불리언 타입 선언
타입스크립트에서 기본적인 원시 타입은 다음과 같이 선언할 수 있습니다:
// 숫자 타입
let num: number = 42;
// 문자열 타입
let str: string = "Hello, TypeScript";
// 불리언 타입
let isAdmin: boolean = false;
// 타입 추론
let inferredNum = 123; // 타입스크립트는 이 변수의 타입을 number로 추론합니다.
let inferredStr = "Inferred"; // 타입스크립트는 이 변수의 타입을 string으로 추론합니다.
배열과 튜플 타입 사용법
배열과 튜플은 다음과 같이 선언할 수 있습니다:
// 숫자 배열
let numbers: number[] = [1, 2, 3];
// 문자열 배열
let fruits: string[] = ['apple', 'banana', 'cherry'];
// 튜플 (고정 길이의 배열)
let tuple: [string, number] = ['tuple', 42];
// 제네릭 배열
let genericArray: Array<boolean> = [true, false, true];
// 읽기 전용 배열
let readonlyArray: ReadonlyArray<number> = [1, 2, 3];
readonlyArray[0] = 10; // Error: Cannot assign to '0' because it is a read-only property.
객체 타입 정의 및 사용
객체 타입은 다음과 같이 정의하고 사용할 수 있습니다:
// 간단한 객체 타입
let person: { name: string; age: number } = {
name: "John Doe",
age: 30
};
// 인터페이스로 객체 타입 정의
interface Employee {
id: number;
name: string;
department: string;
}
let employee: Employee = {
id: 101,
name: "Jane Smith",
department: "HR"
};
// 선택적 속성
interface OptionalPerson {
name: string;
age?: number;
}
let optionalPerson: OptionalPerson = {
name: "Mike Brown"
};
// 읽기 전용 속성
interface ReadOnlyPerson {
readonly name: string;
age: number;
}
let readOnlyPerson: ReadOnlyPerson = {
name: "Emily Chen",
age: 25
};
readOnlyPerson.name = "Sarah Lee"; // Error: Cannot assign to 'name' because it is a read-only property.
이러한 기본 타입 선언을 통해 타입스크립트는 코드의 안정성을 높이고 개발자의 실수를 줄일 수 있습니다. 또한, IDE의 자동 완성 기능과 타입 검사를 통해 개발 생산성을 크게 향상시킬 수 있습니다.
추가 팁:
- 타입 어노테이션은 필수는 아니지만, 복잡한 타입이나 함수 시그니처에서는 명시적으로 작성하는 것이 좋습니다.
- 인터페이스는 객체의 구조를 정의하는 데 유용하며, 재사용 가능합니다.
- 유니온 타입과 인터섹션 타입을 사용하여 더 복잡한 타입을 표현할 수 있습니다:
let unionType: string | number = "Hello";
unionType = 42; // OK
interface Square {
sideLength: number;
}
interface Circle {
radius: number;
}
type Shape = Square & Circle;
let shape: Shape = {
sideLength: 10,
radius: 5
};
- 타입 별칭(type alias)은 복잡한 타입을 재사용 가능한 이름으로 정의할 수 있게 해줍니다:
type Point = {
x: number;
y: number;
};
let point: Point = { x: 10, y: 20 };
이러한 기본 타입 선언과 함께 타입스크립트의 고급 기능들을 결합하면 더욱 강력하고 안정적인 코드를 작성할 수 있습니다.
'JavaScript > TypeScript' 카테고리의 다른 글
ts 파일 생성 및 실행 [TypeScript] (1) | 2024.12.19 |
---|---|
tsc 명령어 사용법[TypeScript] (0) | 2024.12.19 |
TypeScript - ECMAScript 표준과의 관계 (0) | 2024.12.19 |
간단한 함수 작성 및 호출(TypeScript) (1) | 2024.12.19 |
TypeScript - 브라우저 호환성 (0) | 2024.12.18 |