타입, 함수 및 유형 연산자와 관련된 TypeScript 기능에 대한 설명입니다.
TypeScript의 부울 유형은 참 또는 거짓일 수 있는 논리 값을 나타냅니다. 예를 들어:
let isCompleted: boolean = true;
let hasPermission: boolean = false;
변수 isCompleted 및 hasPermission은 부울 유형으로 명시적으로 주석이 지정되며 true 또는 false 값만 보유할 수 있습니다.
TypeScript의 숫자 유형은 정수 및 부동 소수점 숫자를 포함한 숫자 값을 나타냅니다. 예를 들어:
let count: number = 10;
let price: number = 4.99;
count 및 price 변수는 숫자 유형으로 명시적으로 주석이 지정되며 숫자 값을 저장할 수 있습니다.
TypeScript의 문자열 유형은 작은따옴표(') 또는 큰따옴표(")로 묶인 텍스트 데이터를 나타냅니다. 예를 들면 다음과 같습니다.
let name: string = "Kevin";
let message: string = 'Hello, TypeScript!';
변수 이름과 메시지는 문자열 유형으로 명시적으로 주석이 추가되며 텍스트 값을 보유할 수 있습니다.
TypeScript의 배열 유형을 사용하면 특정 유형의 값 배열을 정의하고 사용할 수 있습니다. 대괄호([])로 묶인 요소 유형을 지정할 수 있습니다. 예를 들어:
let numbers: number[] = [1, 2, 3, 4, 5];
let names: string[] = ["Kevin", "Bryan", "Shinno"];
변수 번호와 이름은 각각 번호와 문자열 유형의 배열로 명시적으로 주석이 추가됩니다. 지정된 유형의 여러 값을 저장할 수 있습니다.
TypeScript의 튜플은 서로 다른 유형의 고정된 수의 요소가 있는 배열입니다. 튜플의 각 요소는 자체 유형을 가질 수 있습니다. 예를 들어:
let person: [string, number] = ["Kevin", 28];
변수 person은 사람의 이름을 나타내는 문자열과 나이를 나타내는 숫자의 두 요소가 있는 튜플로 명시적으로 주석이 추가됩니다. 튜플에 있는 요소의 순서와 유형은 고정되어 있습니다.
TypeScript의 객체 유형은 기본이 아닌 모든 유형, 즉 숫자, 문자열, 부울, 기호, null 또는 정의되지 않은 모든 유형을 나타냅니다. 복잡한 데이터 구조를 나타내는 데 사용할 수 있습니다. 예를 들어:
let person: object = {
name: "Kevin",
age: 28,
};
변수 person은 개체 유형으로 명시적으로 주석이 지정되며 이름 및 연령과 같은 속성이 있는 개체와 같은 기본이 아닌 모든 값을 저장할 수 있습니다.
TypeScript의 모든 유형은 모든 유형의 값을 보유할 수 있는 동적 유형입니다. 정적 유형 검사를 우회하여 유연하고 검사되지 않은 유형 처리를 허용합니다. 예를 들어:
let value: any = 5;
value = "Hello";
value = true;
TypeScript의 유형 주석을 사용하면 변수, 매개변수 또는 함수 반환 값의 유형을 명시적으로 지정할 수 있습니다. 예를 들면 다음과 같습니다.
let age: number = 25;
// 'age'는 명시적으로 'number' 유형으로 처리됩니다.
function add(a: number, b: number): number {
return a + b;
}
// 매개변수 'a' 및 'b'와 'add' 함수의 반환 유형은 'number'로 주석 처리됩니다.
위의 예에서 변수 age는 명시적으로 숫자로 주석 처리됩니다. add 함수는 숫자 유형의 매개변수 두 개를 사용하고 숫자 유형의 값을 반환합니다.
TypeScript는 매개변수 유형, 반환 유형, 선택적 매개변수, 기본 매개변수 값 및 나머지 매개변수를 포함하여 함수 작업을 위한 다양한 기능을 제공합니다. 다음은 이러한 기능 중 일부를 보여주는 예입니다.
function greet(name: string, age?: number): string {
if (age) {
return `Hello, ${name}! You are ${age} years old.`;
} else {
return `Hello, ${name}!`;
}
}
console.log(greet("John")); // Output: Hello, John!
console.log(greet("Alice", 30)); // Output: Hello, Alice! You are 30 years old.
위의 예에서 greet 함수는 string 유형의 필수 name 매개변수와 number 유형의 선택적 age 매개변수를 사용합니다. age 매개 변수가 제공되면 인사말 메시지에 나이가 포함됩니다. 이 함수는 문자열을 반환합니다.
TypeScript는 유형을 조작하고 결합하기 위한 여러 연산자와 유틸리티를 제공합니다. 다음은 몇 가지 예입니다.
Union: | 연산자를 사용하면 값이 가능한 여러 유형 중 하나를 가질 수 있음을 지정할 수 있습니다. 예를 들어:
let value: string | number;
value = "abc";
value = 123;
Intersection: & 연산자를 사용하면 여러 유형을 각 유형의 모든 속성이 있는 단일 유형으로 결합할 수 있습니다. 예를 들어:
type A = { foo: number };
type B = { bar: string };
let value: A & B;
value = { foo: 123, bar: "abc" };
Typeof 유형 연산자: typeof 연산자를 사용하면 값 또는 변수의 유형을 얻을 수 있습니다. 예를 들어:
let num = 5;
type NumType = typeof num;
let value: NumType = 10;
유형 어설션: 유형 어설션(as)을 사용하면 유형 추론이 유형을 결정할 수 없을 때 값의 유형을 명시적으로 지정할 수 있습니다. 예를 들어:
let value: any = "hello";
let length: number = (value as string).length;
이것은 유형, 함수 및 유형 연산자 작업을 위해 TypeScript가 제공하는 많은 기능과 기능의 몇 가지 예일 뿐입니다. TypeScript의 유형 시스템은 유형 안전성을 보장하고 정적 유형 검사를 제공하기 위한 다양한 도구 세트를 제공합니다.