Базовая структура TypeScript
Базовую структуру программы на TypeScript можно разделить на несколько частей, каждая из которых имеет определённое назначение.
Ниже приведены общие компоненты программы на TypeScript:
- Объявления: включая объявления типов, объявления интерфейсов и т. д.
- Объявления переменных: включая
let,constиvarиспользование. - Объявления функций: включая обычные функции и стрелочные функции.
- Объявления классов: используются для определения классов и их членов.
- Интерфейсы & псевдонимы типов: описывают структуру типов.
- Модуляризация: через
importиexportорганизовать код. - Утверждения типов: принудительное преобразование типов.
- Обобщения: делают код более переиспользуемым.
- Комментарии: повышают читаемость кода.
- Вывод типов: автоматически выводит типы.
- Защитники типов: сужают область типов.
- Асинхронное программирование: поддерживает
async/await。 - Обработка ошибок: через
try/catchчтобы перехватывать ошибки.
Вместе вышеперечисленные части образуют базовую структуру программы на TypeScript, предоставляя разработчикам мощную проверку типов, структуру кода и удобство сопровождения.
1. Объявления
Объявления типов:TypeScript — это статически типизированный язык, который использует объявления типов для определения типов переменных, функций, классов и многого другого. Объявления типов помогают сделать код более удобным для сопровождения и читаемым.
Пример
let age: number = 30;
Объявления интерфейсов:Используются для определения структуры объекта, включая его свойства и методы.
Пример
name: string;
age: number;
}
2. Объявления переменных
В TypeScript можно использовать let, const и var для объявления переменных. Рекомендуется использовать let и const; var больше не рекомендуется.
Пример
const pi: number = 3.14;
3. Объявления функций
Объявления функций: TypeScript позволяет объявлять функции с аннотациями типов, включая типы параметров и типы возвращаемых значений.
Пример
return "Привет, " + name;
}
Стрелочные функции:TypeScript также поддерживает стрелочные функции ES6, используя краткий синтаксис для объявления функций.
Пример
4. Объявления классов
TypeScript обеспечивает поддержку объектно-ориентированного программирования, позволяя определять классы, их методы и свойства.
Пример
name: string;
age: number;
constructor(name: string, age: number) {
this.name = name;
this.age = age;
}
greet() {
return `Hello, my name is ${this.name}`;
}
}
5. Интерфейсы и псевдонимы типов
Интерфейс: используется для описания формы объекта; интерфейсы могут наследоваться и расширяться.
Пример
name: string;
sound: string;
makeSound(): void;
}
Псевдоним типа:Позволяет определять псевдонимы для объектных типов, объединённых типов, пересечённых типов и многого другого.
Пример
6. Модули и импорты/экспорты
TypeScript поддерживает модульное программирование; вы можете использовать import и export для организации кода.
Экспорт:
Пример
constructor(public name: string) {}
}
Импорт:
Пример
7. Утверждения типов
В некоторых случаях TypeScript не может вывести точный тип переменной; разработчики могут использовать утверждения типа, чтобы явно указать тип.
Пример
let strLength: number = (value as string).length;
8. Обобщения
Обобщения позволяют не указывать конкретные типы при определении функций, интерфейсов или классов, а вместо этого использовать заполнители, позволяющие пользователям передавать конкретные типы при их использовании. Обобщения повышают переиспользуемость кода и безопасность типов.
Пример
return arg;
}
9. Комментарии
Комментарии используются в программах на TypeScript, чтобы объяснять назначение и логику кода, повышая читаемость.
Однострочные комментарии:
Пример
Многострочные комментарии:
Пример
многострочный комментарий */
10. Вывод типов
TypeScript автоматически выводит тип переменной в определённых ситуациях. Например, при объявлении переменной и присваивании значения TypeScript выводит тип переменной.
Пример
11. Защитники типов
TypeScript предоставляет защитники типов (такие как typeof и instanceof) для сужения диапазона типов переменных во время выполнения.
Пример
return typeof value === 'string';
}
12. Асинхронное программирование
TypeScript полностью поддерживает асинхронное программирование; вы можете использовать синтаксис async/await для обработки асинхронных операций.
Пример
const response = await fetch("https://example.com");
const data = await response.text();
return data;
}
13. Обработка ошибок
TypeScript позволяет обрабатывать ошибки с помощью блоков try/catch, а также вы можете использовать типы для описания типов ошибок.
Пример
throw new Error("Что-то пошло не так");
} catch (error) {
if (error instanceof Error) {
console.error(error.message);
}
}