Pessoal, eu entendi que realmente não faz sentido receber um valor de uma função que não retorna nada. Até aí tudo bem, mas eu fiquei pensando: E se tiver uma variável com o mesmo nome da função? Já que para identificar uma função precisa de parênteses e na associação do onclick não precisou. Então resolvi fazer o seguinte teste:
<meta charset="UTF-8">
<button>Clique-me</button>
<script>
function tchau() {
alert("Função");
}
var button = document.querySelector("button");
var tchau = "Variável";
button.onclick = tchau;
alert(button.onclick);
</script>
Não importa o que eu coloque como variável para o onclick, ele sempre retorna null. Eventos tipo o onclick, só podem receber funções?
O engraçado é que nesse alerta que mostra o evento, ele pega literalmente o código e imprime.
Obs.: Se eu utilizar "return" mesmo com o tchau sem parênteses, também funciona.