TGViewer
Web Overflow 🇺🇦 Web Overflow 🇺🇦 @web_overflow · 3.81K subscribers
Post #1101 2.64K
Decorators in JS 🎄

І хоч в самій специфікації ECMAScript декоратори на стадії пропозиції та плану, їх вже можна спробувати завдяки TypeScript чи Babel.

Отож, що воно таке? Почнемо з маленьких аналогій. Якщо ви працювали з Python, то можливо вже зустрічали там декоратори, і там вони працюють десь з таким ж принципом. Або ж, можливо, ви вивчали патерни і зустрічали там однойменний структурний патерн. Мета декораторів - динамічно навішати певний функціонал. Стандартний приклад - вивести повідомлення перед початком виконання функції та після її завершення.

Синтаксис використання декораторів. Перед оголошенням класу, його методу чи властивості необхідно додати імʼя декоратора з префіксом @. Наприклад:

class Pokemon {
@log
attack() { }
}


Декоратори можуть створюватись динамічно, тому наступний синтаксис теж цілком можливий:

class Pokemon {
@log({ level: "debug" })
attack() { }
}


Як написати свої декоратори? Тут трохи більше деталей, тому ми думаємо, що краще використати документацію 🙂

Декоратори можна зустріти, наприклад, у NestJS, де зокрема з їх допомогою працює Dependency Injection.

Зверніть увагу, що в документації за посиланням нижче є банер з посиланням на статтю про декоратори із стадії 3.


👉 Відкрити документацію
👉 Відкрити статтю про патерн

#interview
  • 👍 12
  • 🔥 2
  • 🤯 2
More from @web_overflow
  1. Sep 9, 2026Як вам жабка за 2к? 😁
  2. Aug 24, 202635 років Незалежності України 🇺🇦 Сьогодні хочеться просто побажати нам берегти своє, цін…
  3. Aug 3, 2026Трохи випали з ефіру, але не переживайте, у нас усе стабільно: Юра багато працює, а Настя…
  4. Jul 1, 2026До кінця тижня ми не знаємо хто цей ваш АІ 🌿
  5. Jun 19, 2026Не оновлюйте поки свою версію Node.js 😳 Зарелізив я, значить, учора 2 UI-апдейти, після я…
  6. Jun 12, 2026scrollbar-gutter 📜 Нещодавно пофіксив "ui-glitch" за допомогою overflow-y: scroll, і чере…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →