Sobes.tech
Middle

As-tu tout utilisé en TypeScript : génériques, unions, types utilitaires ? Parle-moi des génériques, à quoi les as-tu utilisés ?

sobes.tech IA

Réponse de l'IA

Дженерики в TypeScript позволяют создавать компоненты и функции, которые работают с разными типами данных, сохраняя при этом типовую безопасность. Это особенно полезно для написания переиспользуемого кода, например, универсальных функций или компонентов.

Пример использования дженериков — функция, которая возвращает элемент массива по индексу, при этом тип возвращаемого значения совпадает с типом элементов массива:

function getElement<T>(arr: T[], index: number): T {
  return arr[index];
}

const numbers = [1, 2, 3];
const num = getElement(numbers, 1); // тип num — number

const strings = ['a', 'b', 'c'];
const str = getElement(strings, 0); // тип str — string

Юнионы (объединения типов) позволяют переменной принимать несколько типов, например string | number. Это удобно, когда функция может работать с разными типами входных данных.

Утилитарные типы — это встроенные типы TypeScript, которые помогают трансформировать другие типы, например Partial<T>, Readonly<T>, Pick<T, K> и др. Они упрощают работу с типами и делают код более выразительным.