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

Uso do 'let' pra declaração de variável

A documentação diz que 'let' é utilizado para criar variáveis de escopo local o que não acontece no caso do jogo. Como eu posso entender melhor o uso do 'let' nesse caso?

2 respostas
solução!

Oi oi, Jeanna! Tudo bem com você?

Muito interessante sua colocação e de fato a variável declarada com let pode ser utilizada em um escopo mais fechado. No entanto, algumas variáveis nesse código precisam ser consumidas por mais de uma função e por isso são declaradas no escopo global. E por qual motivo então não utilizamos a var? Porque o uso de var para declarar variáveis é entendido como uma má prática dentro do desenvolvimento com JavaScript.

  • Vamos entender um pouco mais sobre as variáveis em JavaScript?

const, let e var são formas de manipular variáveis em JavaScript. Antes de 2015 existia apenas a var. No entanto, com as especificações ECMAScript, muitas mudanças foram incorporadas na linguagem, inclusive a adoção de let e const. Em um primeiro momento podemos pensar que essas palavras reservadas funcionam da mesma maneira, mas ao trabalharmos com essas diferentes formas de guardar valores, percebemos que suas diferenças se fundamentam em escopo e armazenamento de informações.

Com var e let podemos instanciar e modificar os objetos ao longo do código. Porém, a const é um pouco mais "fechada", pois a referência desse tipo de variável na memória do computador será a mesma sempre, por isso não podemos substituir seu valor, o que gera maior consistência ao código.

Um outro ponto de atenção também é em relação ao escopo de variáveis. Quando declaramosvar, temos o problema de "vazamento" do valor dessa variável em outros locais, o que é considerado algo muito problemático. Por esse motivo a letfoi incorporada, pois possui um escopo de bloco mais fechado mas conseguimos realizar a alteração de seus valores se precisarmos. E lembra que eu falei que a const era mais "fechada"? Seu escopo também funciona dessa forma, se declaramos uma variável const dentro de uma função ou um if, por exemplo, esta não ficará acessível em outras partes do código.

Devemos ter em mente que a utilização de const ou let é de acordo com a regra de negócio ou implementação que será realizada, a declaração dessa variável deve seguir a lógica dos objetivos de seu projeto. Ex: se quiser que um valor possa ser modificado, utilize let. Caso seu objetivo seja manter o valor fixo ou que seja acessado apenas dentro de uma função específica, utilize const.

  • Para saber mais

Esse artigo é muito importante e recomendo fortemente que você assista ao vídeo do Marco Bruno, pois ele mostra na prática como funciona a questão do escopo:Como funciona o var, let e const? #01

Um artigo sensacional aqui da Alura que explica e demonstra as diferenças entre as variáveis: Entenda a diferença entre var, let e const no JavaScript

Temos também o Curso Fundamentos do JavaScript: Tipos, variáveis e funções , que é excelente para aprofundar um pouco esse conhecimento e você pode acompanhar a explicação sobre as variáveis nesta aula: Tipos de variáveis

Vou deixar também um artigo muito bacana do imaster sobre o assunto e vale a pena conferir: Let, const e var não é tudo a mesma coisa?

Por fim, siga a dica do Marco Bruno e Esqueça var! :D

Um forte abraço para você, continue contribuindo com o fórum e bons estudos!

Muito obrigada!