Тест по TypeScript — Интерфейсы и типы
Какое ключевое слово используется для объявления интерфейса в TypeScript?
- implements
- class
- type
- interface
Какое ключевое слово используется для расширения интерфейсов?
- merge
- combine
- extends
- &
Какое ключевое слово используется для создания псевдонима типа?
- struct
- type
- interface
- form
Как ведут себя interface
и type
при описании объекта с одинаковой структурой?
- interface быстрее
- type быстрее
- type не поддерживает объекты
- одинаково
Что происходит, если два интерфейса с одинаковым именем описаны в одном пространстве имён?
- Перезаписывает
- Объединяет
- Удаляет
- Игнорирует
Что делает TypeScript, если встретит два интерфейса с одинаковым именем?
- Выдаст ошибку
- Поддерживает только один
- Сотрет первый
- Объединяет определения
Какой ключ используется в классе для реализации интерфейса?
- instanceof
- extends
- implements
- inherit
Можно ли использовать interface
для описания сигнатуры функции?
- Да, можно
- Только с readonly
- Только через any
- Нет
Какой из вариантов позволяет создавать объединения типов (A | B
)?
- union
- enum
- interface
- type
Какой встроенный utility type делает все поля интерфейса необязательными?
- Assign
- Extend
- Optional
- Partial
Какой модификатор делает поле интерфейса только для чтения?
- readonly
- immutable
- const
- fixed
Что означает использование индексной сигнатуры в интерфейсе ([key: string]: number
)?
- Только строковые
- Только числовые
- Любые ключи
- Строго типизированные ключи
Можно ли описать интерфейс с вложенными объектами?
- С ошибкой
- Только через type
- Да
- Нет
Как правильно объявить интерфейс с одним полем a
типа number?
- interface A = { a: number; }
- type A implements { a: number; }
- interface A { a: number; }
- class A: { a: number; }
Можно ли комбинировать интерфейс и тип в одной сущности?
- Нельзя никогда
- Можно без ограничений
- Только через тип
- Можно, но с ограничениями