Executando verificação de segurança...
7

Eu não sabia disso até ontem! #1 - Um truque simples para medir o tempo de execução em Javascript que você provavelmente nunca ouviu falar!

Dando início a uma série de postagens relativamente curtas onde o propósito é compartilhar aprendizados que você não sabia ontem, mas que hoje você SABE, APRENDEU E VAI USAR.

Pelo menos em algum momento...

Para dar início, eu gostaria de compartilhar uma coisa que eu não fazia ideia de que existia, até ontem...

Aprendi isso assistindo a Imersão em Desenvolvimento de APIs com Node.js - NodeBR

Medindo o tempo da sua aplicação usando console.time

Algumas vezes precisamos medir quanto tempo uma função ou uma operação em específico está gastando.

Em casos assim, eu normalmente faria:

const antes = Date.now();

setTimeout(() => {
    const agora = Date.now();
    console.log(`Timer: ${(agora - antes)/1000}s`);
}, 3000);

Ou seja, armazenaria o timestamp antes de rodar a função e assim que minha função terminasse de rodar, eu pego o timestamp 'atual' e faço a subtração.

Agora, eu posso substituir isso por console.time, dessa forma aqui:

console.time('Timer');

setTimeout(() => {
    console.timeEnd('Timer');
}, 3000);

Primeiro você seta um nome para o seu timer, isso porque você pode ter vários rodando simultaneamente.

Aqui eu chamei nosso timer de timer 🤓

Nisso, quando você encerrar a contagem de tempo, basta passar console.timeEnd(nome)

Se caso você quiser apenas imprimir o tempo decorrido, mas sem encerrar a contagem, você pode fazer isso usando console.timeLog(nome)

Qual a vantagem?

Não vejo porque não usar console.time quando você não deseja e nem precise armazenar o tempo gasto em uma variável.

Além disso, você pode rodar vários timers simultaneamente, o que pode ser útil e menos trabalhoso se você quer descobrir onde está o gargalo de tempo no seu código.

Enfim,

Se houver críticas ou sugestões, ficaria feliz em saber.

Espero que tenha sido útil pra você de alguma forma!

Se você quiser saber quais foram as habilidades que me ajudaram a conseguir meu primeiro emprego na programação, clique aqui para ler um pouco mais sobre mim: Meu primeiro emprego

Obrigado e até a próxima!

Carregando publicação patrocinada...
4

Uma alternativa que eu acho muito boa é o Benchmark.js.

É bem fácil de usar e dá os resultados em um formato bem legal, além de dar métricas - na minha opinião - melhores do que somente o tempo total.

Tem uns exemplos que fiz aqui e aqui, veja lá como é simples de usar.

1
1