Duvida referente ao desafio da aula 4
Não estou conseguindo entender a logica usada, pois eu quero usar uma variável que ainda não foi declarada
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Duvida referente ao desafio da aula 4
Não estou conseguindo entender a logica usada, pois eu quero usar uma variável que ainda não foi declarada
Olá, Cecília!
Analisando as imagens que você compartilhou, parece que o erro Uncaught ReferenceError: intervaloId is not defined está ocorrendo porque a variável intervaloId está sendo utilizada na função iniciarOuPausar() antes de ser declarada. Isso acontece porque o JavaScript é uma linguagem de escopo e precisa que as variáveis sejam declaradas antes de serem utilizadas.
Para resolver esse problema, você precisa garantir que a variável intervaloId seja declarada no escopo apropriado, geralmente no início do seu arquivo JavaScript, para que ela esteja disponível para as funções que a utilizam. Aqui está um exemplo de como você pode fazer isso:
// Declare a variável no escopo global do arquivo
let intervaloId = null;
function iniciarOuPausar() {
if (intervaloId) {
musicaPausa.play();
zerar();
return; // early return -- circuit breaker
}
musicaPlay.play();
intervaloId = setInterval(contagemRegressiva, 1000);
}
// ...resto do código...
Note que eu usei let para declarar a variável intervaloId no início do arquivo. Isso permite que a variável seja reatribuída posteriormente, o que é necessário no caso de você querer iniciar e parar o intervalo.
Certifique-se de que a declaração da variável intervaloId esteja no topo do seu arquivo JavaScript ou pelo menos antes de qualquer função que a utilize. Isso deve resolver o erro de referência que você está enfrentando.
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!
Espero ter ajudado e bons estudos!