https://learn.coderslang.com/0278-event-driven-programming-in-js/
Event-driven programming in JS