Встречается на собеседованиях • сегодня
В чем разница между интерфейсом и типом
Основное отличие в возможностях и использовании:
- Расширение:
- Интерфейсы можно расширять через
extends
typescriptinterface A { x: number } interface B extends A { y: string }- Типы через
&(intersection)
typescripttype A = { x: number } type B = A & { y: string } - Интерфейсы можно расширять через
-
Объединение:
- Интерфейсы поддерживают объявление слияния (declaration merging)
typescriptinterface User { name: string } interface User { age: number } // User теперь имеет оба поля- Типы так делать нельзя
-
Использование:
- Интерфейсы лучше для объектов/классов
- Типы для сложных комбинаций, юнион-типов
typescripttype Status = 'loading' | 'success' | 'error'
Лучше использовать интерфейсы для публичного API (например, библиотек), так как их проще расширять. Типы - для внутренней логики.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы