Sobes.tech
Middle
16

Что знаешь про утилитарные типы TypeScript?

Компании, где спрашивали
Marfatech

Ответ от нейросети

sobes.tech AI

Утилитарные типы TypeScript — это встроенные типы, которые позволяют трансформировать или комбинировать существующие типы для удобства и безопасности кода. Они помогают создавать новые типы на основе уже определённых.

Основные утилитарные типы:

  • Partial<T> — делает все свойства типа T необязательными.
  • Required<T> — делает все свойства типа T обязательными.
  • Readonly<T> — делает все свойства типа T только для чтения.
  • Pick<T, K> — выбирает из типа T только свойства с ключами K.
  • Omit<T, K> — исключает из типа T свойства с ключами K.
  • Record<K, T> — создаёт тип объекта с ключами K и значениями типа T.
  • Exclude<T, U> — исключает из типа T все типы, которые присутствуют в U.
  • Extract<T, U> — выбирает из типа T только те типы, которые есть в U.
  • NonNullable<T> — исключает из типа T null и undefined.

Пример использования Partial:

interface User {
  id: number;
  name: string;
  email: string;
}

function updateUser(id: number, userUpdates: Partial<User>) {
  // userUpdates может содержать любое подмножество свойств User
}

Утилитарные типы делают код более выразительным и помогают избежать дублирования типов.