Подумайте об этом так:
function addEventListener(event, handler) {
const eventObject = new Event();
switch(event) {
case "keydown":
handler(eventObject);
}
}
Очевидно, что это упрощенная версия, но передаваемая вами функция вызывается с аргументом addEventListener