EventEmitter
20 min·senior·data-structures · maps
Implement class EventEmitter:
on(event, handler)— register, returns an off functionoff(event, handler)— removeonce(event, handler)— fire at most onceemit(event, ...args)— call all handlers in registration order
Handlers added during emit should NOT fire on the same emit pass.
expected time · O(1) on/off, O(handlers) emit
expected space · O(handlers)
10 lines
⏵ run · no run yet · ctrl+enter