Встречается на собеседованиях • сегодня
Что происходит при объявлении двух интерфейсов с одинаковыми именами в TypeScript
В TypeScript при объявлении двух интерфейсов с одинаковыми именами происходит их автоматическое слияние (declaration merging). Все свойства из обоих интерфейсов объединяются в один тип. Если есть конфликтующие свойства с разными типами, возникнет ошибка.
Пример:
typescript
interface User {
name: string;
}
interface User {
age: number;
}
// Результат слияния:
// interface User {
// name: string;
// age: number;
// }
const user: User = {
name: 'John',
age: 30
};Если попытаться объявить свойства с одинаковыми именами, но разными типами, TypeScript выдаст ошибку:
typescript
interface User {
name: string;
}
interface User {
name: number; // Ошибка: Все объявления 'name' должны иметь одинаковый тип
}
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы