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

В чём разница между interface и type

interface и type в TypeScript используются для описания типов, но есть ключевые различия:

  1. Расширение
    interface можно расширять через extends, а type — через & (intersection).
    typescript
    interface A { x: number }
    interface B extends A { y: string }
    

type C = { x: number };
type D = C & { y: string };

text

2. **Объединение**  
`interface` поддерживает автоматическое слияние (declaration merging), а `type` — нет.  
```typescript
interface User { name: string }
interface User { age: number } // Объединится в { name: string; age: number }
  1. Примитивы и сложные типы
    type может описывать примитивы, юнионы, кортежи, а interface — только объекты.
    typescript
    type ID = string | number;
    type Point = [number, number];

Когда использовать:

  • interface — для объектов и API, где важно расширение.
  • type — для сложных типов, юнионов или кортежей.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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