I don’t understand why a callback function defined with () is only executed immediately and never again. For instance:
<body>
<button type="button">Click Me!</button>
<script>
const buttonElement = document.querySelector('button');
function sayHello(e){
console.log("hello")
}
buttonElement.addEventListener('click', sayHello()); // function sayHello will be executed imidiately only once
buttonElement.addEventListener('click', sayHello); // function sayHello will be executed only when button is clicked
</script>
</body>
Why does the first EventListener will be executed immediately and never work again ?