Generic-типы
Базовый пример
const arrayOfNumbers: Array<number> = [1, 2, 3, 4]
function reverse<T>(array: T[]): T[] {
return array.reverse()
}Generic и Promise
Использование generic в промисах:
// Через Generic тип указываем с каким типом работает Promise
const promise = new Promise<string>(resolve => {
setTimeout(() => {
resolve('Promise resolved')
}, 2000)
})
// data имеет тип string теперь
promise.then(data => {
console.log(data)
})
/*
Что здесь происходит:
1. создается callback-функция: data => {console.log(data)}
2. resolve инициализируется значением callback-функции через вызов у promise метода then
3. Когда promise запущен, внутри него будет вызван resolve
*/Generic типы для создания более гибких функций и проверки самого себя на этапе разработки
Использование для получения доступа к информации о полях
Generic типы в классах
Partial: Generic типы и временные объявления
Readonly инструмент
Этот инструмент позволяет блокировать изменение значений полей
То же самое можно делать и с объектами.
Last updated