Встречается на собеседованиях • сегодня
В чем разница между типами и интерфейсами
В TypeScript и типы (type), и интерфейсы (interface) позволяют описывать структуры данных, но есть ключевые различия:
- Расширение:
- Интерфейсы поддерживают
extends:typescriptinterface A { x: number } interface B extends A { y: string } - Типы используют
&(пересечение):typescripttype A = { x: number } type B = A & { y: string }
- Интерфейсы поддерживают
-
Объединение:
- Интерфейсы можно дополнять (декларативное слияние):
typescript
interface User { name: string } interface User { age: number } // User теперь { name: string; age: number } - Типы так делать нельзя.
- Интерфейсы можно дополнять (декларативное слияние):
-
Примитивы и сложные типы:
- Типы могут описывать примитивы, объединения, кортежи:
typescript
type ID = string | number type Point = [number, number] - Интерфейсы работают только с объектными структурами.
- Типы могут описывать примитивы, объединения, кортежи:
Когда использовать:
- Интерфейсы — для описания форм объектов, особенно в ООП-стиле.
- Типы — для сложных комбинаций, условных типов, mapped types.

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