Встречается на собеседованиях • сегодня
В чем разница между типом и интерфейсом в TypeScript
type и interface в TypeScript используются для описания типов, но есть ключевые различия:
- Расширение
interfaceподдерживает объединение черезextends:typescriptinterface A { x: number } interface B extends A { y: string }typeиспользует&(intersection):typescripttype A = { x: number } type B = A & { y: string }
-
Объединение
typeпозволяет создавать union-типы:typescripttype Status = 'success' | 'error'interfaceтак не может.
-
Декларативное слияние
interfaceможно объявлять несколько раз — они автоматически мержатся:typescriptinterface User { name: string } interface User { age: number }typeтак не поддерживает.
Когда что использовать?
interface— для объектов/классов, особенно в OOP.type— для сложных типов, union, tuples.
Примеры:
typescript
// Tuple через type
type Point = [number, number];
// Union через type
type ID = string | number;
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы