> Что такое декораторы в TypeScript и для чего они используются (TypeScript)

Уровень: junior · Роль: frontend · Категория: Технические вопросы

Компании: Soft_Media_Group, ЛОЦИЯ, Яндекс

Стек: TypeScript

> Пример ответа

Декораторы в TypeScript - это специальный синтаксис, позволяющий добавлять метаданные и изменять поведение классов, методов, свойств или параметров на этапе объявления. Они выглядят как функции, начинающиеся с символа @, и применяются к целевой сущности.

Основное назначение декораторов:

  • Расширение функциональности без изменения исходного кода класса (например, логирование, кэширование, валидация).

  • Добавление метаданных для фреймворков (Angular, NestJS) - например, @Component, @Injectable.

  • Реализация паттернов (декоратор, фабрика) в чистом виде.

Пример простого декоратора класса:

TYPESCRIPT
function sealed(constructor: Function) {
Object.seal(constructor);
Object.seal(constructor.prototype);
}
@sealed
class MyClass {}

Декораторы бывают: для класса, метода, свойства, аксессора и параметра. Они выполняются во время объявления, а не вызова, и позволяют гибко управлять поведением кода, особенно в комбинации с рефлексией (Reflect API).

> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?

Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью