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

Foi dificil, havia um erro e eu demorei bastante pra entender o que houve

Acontece que existe o comando - "Declare uma variável chamada nome e atribua a ela o valor "Lua"". e depois - "Use um prompt para perguntar o nome do usuário e armazená-lo na variável nome." Em nenhum momento foi dito que ao usar o "let nome = "Lua";" não conseguiriamos usar "let nome = prompt('Digite o seu nome');" Inclusive essa é opnião do instrutor, quando consultei por duvida, a sujestão era usar da forma sitada a cima, e não funciona por estar escrito duas vezes "nome". Eu não tenho noção nenhuma de programação, estou aprendendo tudo agora, e tive que descobrir sozinha o que estava errado. No final deu certo, mas ainda acho que a instrução ficou meio vaga. E que será necessaria uma ajuda maior aos alunos.

O meu ficou assim

alert("Bem-vindo ao nosso site"); 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 a habilitação!"); }

10 respostas
solução!

Oi Agda,

Entendo sua frustração com o desafio, é super comum encontrar esses obstáculos no início da jornada. 😜

O problema que você enfrentou é sobre o escopo de variáveis em JavaScript. Quando você declara let nome = "Lua";, você está criando uma variável chamada nome dentro de um escopo. Ao tentar usar let nome = prompt('Digite o seu nome');, você está tentando declarar outra variável com o mesmo nome no mesmo escopo, o que causa um erro.

A solução correta é usar apenas nome = prompt('Digite o seu nome'); para atribuir um novo valor à variável nome já existente. Dessa forma, você está reutilizando a variável declarada anteriormente, sem criar uma nova.

Seu código corrigido ficaria assim:

alert("Bem-vindo ao nosso site");
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 a habilitação!");
}

Note que removemos o let antes de nome = prompt("Digite seu nome"); e idade = prompt("Digite sua idade");. Isso garante que estamos apenas atribuindo novos valores às variáveis já declaradas.

🤓 Para saber mais: Declarações e Escopo de Variáveis em JavaScript

Continue praticando e explorando, você está no caminho certo! 🤔

Amiga, presta atenção que eu vou te explicar de um jeito bem fácil, tá? Vamos pensar assim: imagina que você tem uma caixinha chamada nome, e nela você coloca o nome 'Lua'. Depois, você quer perguntar para alguém o nome dela e guardar na mesma caixinha. Até aí, beleza, né?

Só que, se você tentar criar duas caixinhas com o mesmo nome (nome), o computador vai ficar confuso e falar: 'Ei, mas essa caixinha já existe! O que você tá tentando fazer? '. Isso acontece porque a gente usou duas vezes a palavra mágica let pra criar a mesma caixinha.

Como resolve isso? Simples, amiga! A gente só cria a caixinha nome uma vez no começo do código, e depois, quando for usar de novo, a gente só fala: nome = prompt("Qual é o seu nome?"); Assim, o computador entende que você está atualizando o valor dentro da caixinha, e não tentando criar uma nova

Agora sim consegui entender! obrigada Luis e muito obrigada Jaine. Vocês me ajudaram demais !!!

ótima explicação...Me ajudou também! Obrigada ;)

Boa noite!

Muito grato Luis Dias e Jaine, eu também tive o mesmo problema e com ajuda de vocês conseguir entender como funciona a aplicação dos comandos. Obrigado pela contribuição.

Me ajudou bastante também a explicação de vocês!

Excelente explicação! Jaine muito didática, parabéns e muito obrigado :)

Muito obrigada Luis e Jaine! Vocês foram muito didáticos na explicação!!!

Era exatamente o erro que eu estava enfrentando, obrigado Luis e Jaine pela explicação!

Oi, alguém poderia me explicar quando e porque usa os (), "; Fiquei um pouco confuso em que momentos usar pois na aula tinha ('exemplo') e em algum caso só 'exemplo'. Desde já agradeço.