Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Era pegadinha? rss....

Os professores deixaram uma pegadinha prá ver se gente tá atento.... Rs...

Ao fazer o passo a passo, verifiquei que o VSCode não deixa atribuir dois valores as mesmas variáveis.

Olhei no GitHub da aula e informa tbm atribuir no prompt a variavel como nome.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade
alert("Bem vindo ao nosso site!");
let nome = "lua"
let idade = 25
let numeroDeVendas = 50;
let saldoDisponivel = 1000;
alert(mensagemDeErro);
let mensagemDeErro = "Erro! Preencha todos os campos obrigatórios.";
let nome = prompt("Digite seu nome:");
let idade = prompt("Digite sua idade:");
if (idade >= 18) {
alert("Parabéns pode tirar a habilitação!");
}

E não rodava, resolvi excluir as variáveis do começo e rodou.

Exemplifico

Dessa forma acima o VSCode avisa que não pode atribuir dois valores a mesma variável e ao atualizar no navegador nada acontece. Teste excluir as variáveis do início e ficou assim:

alert("Bem vindo ao nosso site!");
alert(mensagemDeErro);
let mensagemDeErro = "Erro! Preencha todos os campos obrigatórios.";
let nome = prompt("Digite seu nome:");
let idade = prompt("Digite sua idade:");
if (idade >= 18) {
alert("Parabéns pode tirar a habilitação!");
}

Funcionou!

Vi que uma colega https://cursos.alura.com.br/user/laismoraes fez o que eu não pensei (e estou muito grata), ela atribuiu uma outra váriavel para os prompts (nomeUsuario e let idadeUsuario ) e funcionou belezinha, depois olhem o código dela.

Gratidão.

1 resposta
solução!

Olá, Patricia! Tudo bem?

Quando você declara uma variável com let, ela só pode ser declarada uma vez no mesmo escopo. Se você tentar declarar novamente, o VSCode (e o JavaScript) vai reclamar.

No seu caso, a solução que você encontrou está correta. Você pode simplesmente remover as declarações iniciais de nome e idade se vai usar essas variáveis para capturar dados do usuário com prompt.

Outra abordagem, como você mencionou que uma colega fez, é usar nomes diferentes para as variáveis que capturam a entrada do usuário, como nomeUsuario e idadeUsuario. Isso evita conflitos e mantém seu código mais claro.

Aqui está um exemplo de como isso ficaria:

alert("Bem vindo ao nosso site!");
let mensagemDeErro = "Erro! Preencha todos os campos obrigatórios.";
alert(mensagemDeErro);

let nomeUsuario = prompt("Digite seu nome:");
let idadeUsuario = prompt("Digite sua idade:");

if (idadeUsuario >= 18) {
    alert("Parabéns pode tirar a habilitação!");
}

Dessa forma, você evita redeclarar as variáveis e mantém o código organizado.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.