2
respostas

[Sugestão] Minha Resolução (dúvida sobre "let")

No caso de listas, seria necessário o "let" para declarar a lista? Deixei sem o "let" e continuou funcionando...

let listaGenerica = [];
let linguagensDeProgramacao = ['JavaScript', 'C', 'C++', 'Kotlin', 'Python'];
linguagensDeProgramacao.push('Java', 'Ruby', 'GoLang');
console.log(linguagensDeProgramacao[0]);
console.log(linguagensDeProgramacao[1]);
console.log(linguagensDeProgramacao[linguagensDeProgramacao.length - 1]);
2 respostas

Boa observação. O seu programa inteiro funciona sem a declaração de 'let', mas você deve pensar no 'let' como uma segurança a mais, para impedir que o seu código funcione de forma não prevista. Uma das principais proteções que o 'let' traz é em relação a vazamento de variáveis, variaveis globais devem funcionar em todo o projeto, e variáveis locais devem funcionar apenas no escopo que foi declarado, o 'let' ajuda para que cada variável funcione apenas onde foi declarada, sem vazamentos. Por mais que o JavaScript aceite variáveis sem a declaração do 'let', isso pode gerar problemas. Use sempre o 'let', pois isso é boa prática. Lembre-se sempre de que alguém vai fazer a manutenção dos seus códigos.

No seu exemplo, não é necessário utilizar o "let" para declarar a lista linguagensDeProgramacao separadamente, pois você já a declarou previamente no escopo global. A palavra-chave "let" é usada para declarar variáveis e não é necessária para acessar ou manipular arrays.

O código que você forneceu funciona corretamente, pois você está apenas declarando a lista uma vez utilizando "let" e, em seguida, adicionando elementos a ela usando o método push.

Se você estiver criando uma lista dentro de uma função ou escopo mais restrito, poderá utilizar "let" para declarar a variável dentro desse escopo específico, mas, no exemplo que você forneceu, o uso do "let" não é estritamente necessário.

Em resumo, a declaração da lista usando "let" é opcional nesse contexto específico, e a funcionalidade do código permanecerá a mesma com ou sem o uso do "let" para a lista.