Встречается на собеседованиях • сегодня

Используешь типы или интерфейсы

В TypeScript и типы, и интерфейсы служат для описания формы объектов, но есть ключевые различия:

  1. Интерфейсы поддерживают объединение через extends:
typescript
interface User {
  name: string;
}

interface Admin extends User {
  role: string;
}
  1. Типы используют & для объединения и могут описывать примитивы, объединения, кортежи:
typescript
type ID = string | number;
type Point = [number, number];
  1. Интерфейсы можно дополнять (declaration merging), типы - нет.

Выбор зависит от ситуации:

  • Для объектов/классов - интерфейсы
  • Для сложных типов - type
  • Для расширения - интерфейсы
  • Для union/intersection - type

В последних версиях TS различия минимальны, поэтому можно руководствоваться стилем команды.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы