Cronometro em JS

Walter Nascimento
Walter Nascimento | PT-BR
2 min readOct 19, 2020

Criando um cronometro com JavaScript

[click here for English]

Vamos criar um simples cronometro usando apenas JavaScript e HTML.

Código

Primeiro vamos criar a interface, faremos algo simples, utilizando apenas HTML.

Código em HTML

Na estrutura em HTML foi criado alguns span para apresentação das informações de tempo, após isso temos 3 botões para controlar as funcionalidades do cronometro.

Agora vamos iniciar a parte do JavaScript.

Código em JS — Part1

Neste código JavaScript, definimos nossas variáveis de controle e associamos as funções aos seus botões.

Agora vamos criar as funções.

Código em JS — Part2

Aqui temos as funções start, pause e reset, na função start, iniciamos o setInterval a cada 10 milissegundos(pois a cada 1 milissegundo trava dependendo do navegador).

Na função pause limpamos o setInterval , na função start é necessário da um clear antes de iniciar para não termos vários funcionando em background, por tanto antes de iniciar os procedimentos é chamado a função pause .

Na função reset zeramos nossas variaveis auxiliares e para que o texto na tela volte a ser 0(zero)na tela, setamos manualmente usando o innerText .

Código em JS — Part3

Aqui temos a parte final, a função de timer do qual é chamada na função start , nessa função verificamos o tempo passado:

  • Se o millisecond somado a 10 for igual a 1000, portanto já se passou um segundo e então zeramos o milissegundo e aumentamos um 1 segundo.
  • Se o second for igual a 60, portanto já se passou um minuto e então zeramos o segundo e aumentamos um 1 minuto.
  • Se o minute for igual a 60, portanto já se passou uma hora e então zeramos o minuto e aumentamos uma hora.

Por fim imprimimos na tela usando o innerText .

A função de returnData é usada apenas para deixar o texto mais dinâmico na tela, fazendo a seguinte logica, se o digito for menor que 10 então concatena com um 0(zero) na frente.

pronto simples assim.

Demo

Veja abaixo o projeto completo funcionando.

Projeto no codepen

Youtube

Se preferi assistir, vejo o desenvolvimento no youtube.

Video no youtube

Obrigado por ler!

Se você tiver alguma dúvida, reclamação ou dica, pode deixar aqui nos comentários. Vou ter o maior prazer em responder!

😊😊 Até mais! 😊😊

--

--