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

В чем разница между типом и интерфейсом в TypeScript

Основные различия между type и interface в TypeScript:

  1. Расширение:
typescript
interface A { x: number }
interface B extends A { y: string }

type C = { x: number }
type D = C & { y: string }
  1. Объединение: Интерфейсы можно объявлять многократно (автоматически мержатся), типы - нет.
  1. Примитивы: type может описывать примитивы, объединения, кортежи:
typescript
type Status = 'active' | 'inactive'
type Coord = [number, number]
  1. Производительность: Интерфейсы немного быстрее при проверке типов.

  2. Классы: Интерфейсы можно implement, типы - нет.

Используйте интерфейсы для объектных структур (особенно в публичных API), а типы для сложных составных типов. В большинстве случаев разница не критична.

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

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

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

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