Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Senior
11
Создание собственного EventEmitter
Условие задачи
Ваша задача — написать класс EventEmitter, который позволяет подписываться на различные типы событий, отписываться от них и рассылать уведомления всем зарегистрированным обработчикам.
// Базовый пример для проверки:
class EventEmitter {
// Реализуйте класс, чтобы заработал код ниже
}
const emitter = new EventEmitter()
const cb1 = () => console.log('cb1')
const cb2 = () => console.log('cb2')
emitter
.on('event', cb1) // подписка коллбяка cb1 на событие 'event'
.on('event', cb2)
.emit('event') // срабатывание события 'event'
// 'cb1'
// 'cb2'
.off('event', cb2) // отписка коллбяка cb2 от события 'event'
.emit('event')
// 'cb1'