image

Acesse bootcamps ilimitados e +650 cursos pra sempre

60
%OFF
ELDON AQUINO
ELDON AQUINO17/08/2023 07:02
Compartilhe
Nexa - Análise Avançada de Imagens e Texto com IA na AWSRecomendados para vocêNexa - Análise Avançada de Imagens e Texto com IA na AWS

Função global setTimeout() do Javascript

  • #JavaScript

O método global setTimeout é uma função em JavaScript que permite atrasar a execução de um trecho de código por um determinado período de tempo. Ele é frequentemente usado para criar atrasos entre ações, animações ou para agendar a execução de tarefas em um futuro próximo.

setTimeout(code, delay)

setTimeout(funcao, atrasoEmMilissegundos);

Parâmetros

funcao a ser executado depois do timer expirar

atrasoEmMilissegundos O tempo em milissegundos, que o cronômetro deve esperar antes que a funcão ou código especificado seja executado.

exemplo 1:

function minhaFuncao() {
 console.log("A função foi executada após o atraso!"); 
}
setTimeout(minhaFuncao, 2000); // Executará minhaFuncao após 2 segundos (2000 milissegundos).

Uma coisa importante a notar é que o setTimeout não garante que a função seja executada exatamente após o tempo especificado. Pode haver pequenas variações devido a fatores como a carga do navegador ou do dispositivo.

Além disso, se você precisar executar o código repetidamente em intervalos regulares, pode usar setInterval, que funciona de maneira semelhante, mas chama a função em intervalos regulares em vez de apenas uma vez.

Exemplo Prático:

// Esta função é chamada quando o alarme deve tocar.

function tocarAlarme() {
 // Define o texto a ser exibido quando o alarme tocar.
 var texto = "Acorde seu imprestável!";
 // Atualiza o conteúdo de um elemento HTML com o texto do alarme.
 result = document.getElementById("alarme").innerText = texto;
}
// Esta função configura o alarme para tocar na hora especificada.
function configurarAlarmeNaHora(horaAlvo) {
 // Divide a string de hora em partes: horas, minutos e segundos.
 const partesHora = horaAlvo.split(":");
 // Obtém a data e hora atual.
 const agora = new Date();
// Cria um novo objeto de data usando a hora alvo e a data atual.
 const horaAlvoObj = new Date(
 agora.getFullYear(),
 agora.getMonth(),
 agora.getDate(),
 partesHora[0],  // Horas da hora alvo.
 partesHora[1],  // Minutos da hora alvo.
 partesHora[2]   // Segundos da hora alvo.
 );
// Verifica se a hora alvo já passou no mesmo dia.
 if (horaAlvoObj <= agora) {
 // Adiciona um dia à data alvo para agendar o alarme para o próximo dia.
 horaAlvoObj.setDate(horaAlvoObj.getDate() + 1);
 }

// Calcula o tempo restante em milissegundos até a hora alvo.
 const tempoRestante = horaAlvoObj - agora;

 // Agende a execução da função tocarAlarme após o tempo restante.
 setTimeout(tocarAlarme, tempoRestante);

 // Exibe uma mensagem no console indicando quando o alarme será acionado.
 console.log( "Alarme configurado para tocar às " + horaAlvoObj.toLocaleTimeString() + "." );
}

// Configura o alarme para tocar às 06:06:00.
configurarAlarmeNaHora("06:06:00");

Espero que possa ajudar a comunidade e tenha dado uma noção de como usar essa função muito importante.

Lembre-se de que o uso excessivo de atrasos com setTimeout pode afetar o desempenho da sua aplicação, especialmente se muitos temporizadores estiverem em execução ao mesmo tempo. Portanto, é importante usá-lo com moderação.

Fonte:

https://developer.mozilla.org/en-US/docs/Web/API/setTimeout

Compartilhe
Recomendados para você
GFT Start #6 - Lógica de Programação
Potência Tech iFood - Desenvolvimento de Jogos
Potência Tech iFood - Programação do Zero
Comentários (0)
Recomendados para você