1
resposta

[Sugestão] minha sugestão comentada para o código

//criando contador regressivo
const play = new Audio("/sons/play.wav");
const pause = new Audio("/sons/pause.mp3");
const beep = new Audio("/sons/beep.mp3");
let contador = 5;
let eventID = null; //como ainda não temos o evento em loop ele é null

// console.log(contador);
iniciar.addEventListener("click", startApp);

function startApp() {
  if (eventID) { //existe eveto ativo?
    clearInterval(eventID); // se existe, pausa evento
    eventID = null; //sinaliza inatividade do evento
    pause.play();
    return;
  } else {
    play.play();
    eventID = setInterval(contRegr, 1000); //se não existe, inicia ou continua
  }
}

function contRegr() {
  if (contador <= 0) { //se contador chega a zero, para o evento
    clearInterval(eventID);
    eventID = null; //sinaliza inatividade do evento
    beep.play();
    return;
  }
  contador--;
  // console.log(contador);
}
1 resposta

Olá, Luis! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso do JavaScript para criar um contador regressivo, utilizou muito bem o setInterval para controlar o tempo e ainda compreendeu a importância do clearInterval para pausar e reiniciar o evento de forma correta.

Continue postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Sugestão de conteúdo para você mergulhar ainda mais no tema:

Alguns materiais estão em inglês, mas é possível compreendê-los usando o recurso de tradução de páginas do próprio navegador.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!