Как ты будешь хранить коллбэки внутри EventEmitter?

Удобно хранить слушателей в Map: ключ — имя события, значение — массив или Set коллбэков.

Короткий ответ

Что ответить на собеседовании

Удобно хранить слушателей в Map: ключ — имя события, значение — массив или Set коллбэков.

Подробный разбор

Ответ с пояснениями

Удобно хранить слушателей в Map: ключ — имя события, значение — массив или Set коллбэков.

Массив сохраняет повторные подписки, Set исключает одинаковые функции — семантику выбирают заранее. Для off нужна ссылка на тот же обработчик. При emit полезно обходить снимок списка, чтобы добавление и удаление подписок не давали неожиданных эффектов.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее