Шпаргалка по TypeScript: основные концепции и лучшие практики
Установка, запуск, типы, классы, все основы
Содержимое страницы
Вот мой краткий шпаргалка по TypeScript, охватывающая ключевые концепции, синтаксис и примеры кода, часто используемые разработчиками:

Шпаргалка по TypeScript
Начало работы
- Установка глобально:
npm install -g typescript - Компиляция файла:
tsc filename.ts - Проверка версии:
tsc --version
Базовые типы
let a: number = 10;
let s: string = "TypeScript";
let b: boolean = true;
let arr: number[] = [1, 2, 3];
let tuple: [string, number] = ["TS", 2025];
let anyValue: any = "Flexible";
let unknownVal: unknown = 5;
let notDefined: undefined = undefined;
let notPresent: null = null;
Объединенные и литеральные типы
let id: number | string = 42;
let direction: 'left' | 'right' = 'left';
Алиасы типов и интерфейсы
type Point = { x: number; y: number };
interface Person { name: string; age: number; }
let user: Person = { name: "Alice", age: 25 };
Функции
function sum(a: number, b: number): number {
return a + b;
}
const multiply = (a: number, b: number): number => a * b;
function log(msg: string): void { console.log(msg); }
Классы
class Animal {
name: string;
constructor(name: string) { this.name = name; }
move(distance: number = 0): void { console.log(`${this.name} moved ${distance}`); }
}
Модификаторы доступа
public(по умолчанию),private,protected,readonly
class Point {
constructor(private x: number, private y: number) {}
}
Обобщения (Generics)
function identity(arg: T): T { return arg; }
let output = identity("myString");
Перечисления (Enums)
enum ResourceType { BOOK, FILE, FILM }
let r: ResourceType = ResourceType.BOOK;
Приведение типов / Явное приведение (Type Assertions / Casting)
let someVal: unknown = "Hello";
let strLength: number = (someVal as string).length;
Модули
// Экспорт
export function foo() {}
// Импорт
import { foo } from "./module";
Продвинутые типы
- Пересечение:
type A = { a: number }; type B = { b: number }; type AB = A & B; // { a: number, b: number } - Условные типы:
type IsString = T extends string ? true : false; - Картируемые типы (Mapped):
type Readonly = { readonly [P in keyof T]: T[P]; } - Типы шаблонных литералов:
type EventName = `on${Capitalize}`;
Полезные типы утилит
Partial, Required, Readonly, Pick, Omit, Record
Сужение типов (Narrowing)
- Используйте
typeofиinstanceofдля сужения типов:
function padLeft(value: string, padding: string | number) {
if (typeof padding === "number") {
return Array(padding + 1).join(" ") + value;
}
return padding + value;
}
Эта сводка предоставляет основной синтаксис и функции, необходимые для большинства рабочих процессов разработки на TypeScript.
Для получения дополнительных инструментов разработчика и шпаргалок см. Инструменты разработчика: Полное руководство по современным рабочим процессам.
Полезные ссылки
- Шпаргалка по VSCode
- Шпаргалка по Golang
- Шпаргалка по Terraform - полезные команды и примеры
- Шпаргалка по Docker
- Шпаргалка по Docker Compose - самые полезные команды с примерами
- Установка Node.js
- Установка Flutter
- Кодирование - декодирование Base64 на Windows, Linux и Mac
- Декодирование и печать токена JWT
- Горячие клавиши Ubuntu: Полная шпаргалка