Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Lista definida sem usar "let" em "function.preload()"

Olá.

Quando o professor do curso Jogos clássicos parte 2, na aula 3, definiu uma lista para uma série de imagens dentro da função citada no título desse tópico, não foi preciso usar o comando "let" como é feito ao criar as outras listas. Eu fiz o mesmo e tive um resultado igual ao do professor. Minha dúvida é: por que não foi necessário usar o "let" e porque quando fazemos nessa situação ele acaba dando erro no script?

A parte do script a qual me refiro:

function preload(){

estrada = loadImage ("imagens/estrada.png");

ator = loadImage ("imagens/ator-1.png");

carro1 = loadImage ("imagens/carro-1.png")

carro2 = loadImage ("imagens/carro-2.png")

carro3 = loadImage ("imagens/carro-3.png")

imagensCarros = [carro1, carro2, carro3]; }

4 respostas
solução!

Fala, Victor! Tudo bem contigo?

Desculpe a demora em dar um retorno

Veja que, no início do código, nós criamos essas variável e atribuímos valores a elas utilizando let.

Imgur

Quando vamos lançá-las dentro da função e já sabendo que elas já foram criadas "globalmente" (para qualquer parte do código acessar) não precisamos criá-las novamente.

Imgur

Caso criássemos uma variável "local" (dentro de uma função) ela só teria validade para a função e não às demais partes do código. Caso quiséssemos usar a mesma variável, teríamos que criar novamente, onde quer que for, para utilizarmos.

Neste link da MDN Web Docs você terá diversos exemplos de variáveis que pode te ajudar ainda mais na compreensão.

Qualquer dúvida nos procure, Victor!

Um abraço e bons estudos!

Opa! Obrigado pela resposta, Cássio. Então, pelo que eu entendi, não foi necessário usar o "let" na lista porque os itens dela eram variáveis que já foram atribuídas. É isso mesmo?

Perfeito, Victor! Isso mesmo!

Veja outro exemplo abaixo:

<meta charset="UTF-8">

<script>

    let numeroA = 2;
    let numeroB = 3;

    function soma() {
        let calculo = numeroA + numeroB;
        return calculo;
    }

    document.write(soma());

</script>

Criei duas variáveis e chamei elas dentro de uma função, mas não precisei "criá-las" novamente usando let. Só criei uma variável chamada calculo para guardar a soma.

Quero muito que dê um uma lida nesta documentação da MDN Web Docs sobre Variáveis. Ela vai trazer diferenças entre let, var e const. Vai mostrar o que é um variável global (como fizemos) e o que é variável local. Vai te ajudar muito, Victor!!!

Qualquer dúvida nos procure, amigo!!!

Um abraço!!!

Show! Obrigado pela dica.