Для чего нужен Partial

«Для чего нужен Partial» — вопрос из категории TypeScript, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Partial<T> в TypeScript создаёт тип, где все свойства T становятся необязательными (?). Это полезно, когда нужно работать с частью объекта, а не со всеми его полями.

Пример:

interface User {
  name: string;
  age: number;
}

function updateUser(user: User, fieldsToUpdate: Partial<User>) {
  return { ...user, ...fieldsToUpdate };
}

const user = { name: 'Alice', age: 30 };
updateUser(user, { age: 31 }); // OK - можно передать только age

Используется для:

  • Обновления объектов (патчинг)
  • Опциональных конфигураций
  • Создания мок-данных в тестах
  • Работы с формами, где поля заполняются постепенно