No javascript é permitido chamar uma função sem abrir e fechar parentes?]
button.onclick = verifica;
Fiquei com dúvida nessa chamada: verifica... não deveria ser verifica()?
No javascript é permitido chamar uma função sem abrir e fechar parentes?]
button.onclick = verifica;
Fiquei com dúvida nessa chamada: verifica... não deveria ser verifica()?
Oi Jéssica, tudo bem ?
Nesse caso, estamos passando apenas a referencia, toda vez que houver um click ele vai chamar de fato o método que precisa ser executado, que é o verifica()
Exatamente como o Matheus comentou!!
Pelo que entendi, se chamar verifica() ele primeiro chama o método, e nesse caso o certo é primeiro disparar o evento click do botão para depois chamar o método. Por isso que é chamado sem o () correto?
Isso! Como Matheus colocou bem, quando clicamos no botão, é como se o navegador fizesse verifica()
para nós.
A forma abaixo terá problema:
button.onclick = verifica();
Você estará chamando a função verifica()
antes que o usuário clique no botão. E mais do que isso, o retorno da função será atribuído à button.click
. Como a função verifica()
não retornada nota, o que ficará armazenado em button.click
será undefined. Daí, quando alguém clicar no botão nada acontecerá.
Sucesso e bom estudo minha aula!