Ответ
TypeScript расширяет JavaScript, добавляя дополнительные типы:
- Union Types - объединение типов через
|:
let id: string | number;
- Intersection Types - пересечение типов через
&:
type Admin = Person & { permissions: string[] };
- Tuple - фиксированный массив с определенными типами элементов:
let coordinates: [number, number];
- Enum - перечисление именованных констант:
enum Direction { Up, Down, Left, Right }
- Literal Types - конкретные значения как тип:
let status: 'active' | 'inactive';
-
Any/Unknown - any отключает проверку типов, unknown требует явного приведения.
-
Never - тип для функций, которые никогда не завершаются.
-
Void - отсутствие возвращаемого значения.
-
Type Aliases - псевдонимы для типов:
type Point = { x: number, y: number };