1
resposta

Por que o código só funcionou quando eu retirei o let?

Coloquei meu código dessa forma, só assim deu certo. Com a solução fornecida não tive o mesmo resultado

alert ("Seja bem-vindo!");

let nome = "Lua";
let idade = 25;
let numeroDeVendas = 50;
let saldoDisponivel = 1000;

alert ("Erro! Preencha todos os campos!");

let mensagemDeErro = "Erro! Preencha todos os campos!";
alert (mensagemDeErro);

nome = prompt ("Digite seu nome:");
idade = prompt ("Digite sua idade:");
if (idade >= 18) {
alert ("Pode tirar sua habilitação");
}

1 resposta

Ola Ysabella. Entao, pude perceber que o seu codigo se consiste de dois "esquemas diferentes", parece que voce estava fazendo uma coisa (linhas 3 a 6, onde ha o nome lua, etc) e em seguida quis mudar para uma nova proposta, onde o usuario digitaria cada variavel. Voce perguntou porque o codigo funcionou após retirar o let das linhas onde há o comando prompt, e é simples: voce ja havia declarado essas mesmas variaveis, com os exatos nomes, utilizando um let la atras, e agora com a resposta do usuario voce nao estaria definindo essas variaveiis do zero, apenas alterando os valores delas, por isso não era necessario outro let. Como exemplo disso, quero te lembrar de uma pratica que vimos em que fizemos um contador:
`let contador = 1;
while (contador < 4) {

console.log('Executando a interação ' + contador);

contador = contador + 1;
}`
Nesse exemplo voce ve que usamos o let no inicio para declarar a variavel "contador", e depois nao precisamos colocar o let onde vamos mudar o valor dessa variavel "contador"? Isso foi porque ja haviamos reservado um espaço para ela. Portanto, o seu codigo funcionaria normalmente se voce retirasse aqueles primeiros comandos let em que definiu um exemplo, e colocasse o let nas linhas de prompt, ou se apenas usasse um nome diferente para elas. Perdão pela resposta longa, espero ter ajudado