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
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!