2
respostas

Por que a variável xAleatorio e yAleatorio não podem ficar fora da função?

Fiz o código com a variável pra fora da função atualizaTela e não funcionou, qual a lógica por trás?

2 respostas

Pelo que vi na aula é porquê o setInterval só está chamando diretamente a função, ou seja, o que está fora dela não é executado, sendo assim o xAleatorio e o yAleatorio sempre teriam o valor inicial.

Felipe,

as variáveis xAleatorio e yAleatorio estão dentro da função atualiza pq quando a função atualiza tela for chamada irá executar as funções sorteiaPosicao das variáveis xAleatorio e yAleatorio e, por consequência, irá "força" as variáveis xAleatorio e yAleatorio receberem novos valores.

Você pode até declarar as variáveis fora, mas ainda assim terá que colocar elas dentro da função para poderem receber os novos valores.

Espero ter ajudado. Sucesso na sua jornada!!