TypeScript дополняет JavaScript, добавляя статическую типизацию.
Примитивные типы JavaScript и TypeScript
Самые базовые типы в TypeScript называются примитивами.
Эти типы являются строительными блоками для более сложных типов в ваших приложениях.
TypeScript включает все примитивные типы JavaScript плюс дополнительные возможности типизации.
Вот пять наиболее распространённых примитивных типов, которыми вы чаще всего будете пользоваться:
Boolean (логический тип)
Логический тип, представляющий булевые значения: true или false.
Используется для флагов, переключателей и условий.
Пример
let isActive: boolean = true;
let hasPermission = false; // TypeScript автоматически распознаёт тип 'boolean'
Number (числовой тип)
Числовой тип, охватывающий как целые, так и дробные числа.
TypeScript использует общий тип number для всех числовых значений.
Пример
let decimal: number = 6;
let hex: number = 0xf00d; // шестнадцатеричное число
let binary: number = 0b1010; // двоичное число
let octal: number = 0o744; // восьмеричное число
let float: number = 3.14; // вещественное число
String (строковый тип)
Строковый тип, предназначенный для хранения текста.
Поддерживаются строки в одинарных, двойных и обратных кавычках.
Пример
let color: string = "blue";
let fullName: string = 'Петр Иванов';
let age: number = 30;
let sentence: string = `Привет! Меня зовут ${fullName} и мне скоро будет ${age + 1} лет.`;
BigInt (ES2020+)
Специфичный тип для целочисленных значений большой точности, превышающих пределы обычного числового типа (Number.MAX_SAFE_INTEGER).
Представляет целые числа, превышающие число 2^53 - 1.
Использовать его удобно для арифметики с большими числами.
Используйте суффикс n для создания больших целых чисел.
Пример
const bigNumber: bigint = 9007199254740991n;
const hugeNumber = BigInt(9007199254740991); // Альтернативный синтаксис
Symbol (символьный тип)
Предназначен для создания уникальных идентификаторов.
Чаще всего используется для уникальной идентификации свойств объектов и констант.
Пример
const uniqueKey: symbol = Symbol('description');
const obj = {
[uniqueKey]: 'Это уникальное свойство'
};
console.log(obj[uniqueKey]); // "Это уникальное свойство"