No comando addEventListener(), ele colocou "click" ao invés de "onclick", por quê ?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
No comando addEventListener(), ele colocou "click" ao invés de "onclick", por quê ?
Porque o addEventListener recebe click como argumento, não onclick. O onclick é uma função, enquanto click é apenas uma string que você fornece como argumento. Uma dica: não sei se é uma regra geral, mas quando você fornece um evento para o addEventListener, você simplesmente tira o "on" do nome do evento e passa o evento em si.
Em vez de onmouseover, apenas mouseover, e por aí vai...
Então poderia ser qualquer nome, não é uma sintaxe da linguagem ?
Qualquer nome, desde que seja aceitável como argumento, claro. É uma string, que está dentro do conjunto de strings que a função addEventListener entende como evento.
.onclick() = Função
"click" = Argumento em string dentro de uma biblioteca de eventos que é reconhecida como se fosse a função .onclick()
Quando você vai inserir o evento diretamente no elemento HTML, você vai acabar utilizar o "on", por exemplo:
<input type="text" name="teste" onclick="minhaFuncaoJavascript();">
A explicação do exemplo acima seria: ao clicar no campo texto, executar a função minhaFuncaoJavascript();
Para não ter que fazer isso, você utiliza o listener, então não se mexe no layout, e se faz o vinculo do evento ao elemento em separado.
Nesse caso o "on" deixa de existir e você usa apenas o nome do evento que deseja programar.
Consulte a documentação para saber quais eventos você pode passar como argumento: https://developer.mozilla.org/en-US/docs/Web/Events
excelentes explicações, obrigado.