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

[Dúvida] Desafio 1 - Alerta não aparece

Seguindo as instruções do Desafio 1 fiz as seguintes linhas de comando e adicionei um "else" para para mostrar uma nova mensagem, caso a idade fosse menor que 18, mas o alerta não aparece. Ainda aparece como se fosse a condição >= 18 tivesse sido cumprida. Como solucionar? Segue abaixo:

alert('Boas vindas ao nosso site');
let nome = 'Lua';
let idade = 25;
let numeroDeVendas = 50;
let saldoDisponivel = 1000;

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

let respostaNome = prompt('Qual é o seu nome?');
let respostaIdade = prompt('Qual é a sua idade?');
if (idade >= 18) {
    alert('Pode tirar a habilitação.');
} else if (idade < 18) {
    alert('Não pode tirar a habilitação.');
}
2 respostas
solução!

Olá Felipe!

O problema principal aqui é que você está usando a variável idade que foi definida com o valor 25, lá em cim, para outro desafi e não está atualizando essa variável com a idade que o usuário insere através do prompt.

Para corrigir isso, certifique-se de atualizar a variável idade com o valor inserido pelo usuário ou criar uma nova variável para armazenar esse valor. Além disso, é importante converter a resposta do prompt, que é uma string, para um número, para que a comparação de idade funcione corretamente. Veja como você pode ajustar seu código:

alert('Boas vindas ao nosso site');
let nome = 'Lua';
let idade = 25; // Esse valor, 25 que é a causa do erro, mas vamos susbrever ele lá em cima
let numeroDeVendas = 50;
let saldoDisponivel = 1000;

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

let respostaNome = prompt('Qual é o seu nome?');
let respostaIdade = prompt('Qual é a sua idade?');
idade = parseInt(respostaIdade); // Convertendo para número e atualizando a variável idade.

if (idade >= 18) {
    alert('Pode tirar a habilitação.');
} else {
    alert('Não pode tirar a habilitação.'); // Aqui pode da uma reduzida deixando só else, já que só existem duas condições possíveis.
}

Agora acredito que o seu código está certinho, testa e me diz se funcionou!

Outra observação é que tem dois exercícios no mesmo código isso pode gerar erros, recomendo que separe ou comente o código que não estiver trabalhando no momento.

Espero ter ajudado e reforço que em casos de dúvidas, conte sempre com o fórum da comunidade Alura! Bons estudos!

Sucesso

Um grande abraço e até mais!

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

Faz todo sentido! Obrigado pela correção, Victor