Wuhan isolado de volta na próxima cartão perfurado dia, Wuhan reabastecimento, contra a guerra e ganhar! Hoje eu quero falar sobre a questão js simples temporizador.
1. o setTimeout atrasar o tempo de implementação, prestar atenção após o tempo especificado apenas uma vez
Claro que, às vezes, nós queremos fazer um temporizador com um efeito de atraso, foi executado pode ser, ele é repetidamente chamar a própria função, como segue:
Diversão();
função Fun () {
o console.log (1).
o setTimeout ( "Fun ()", 1000); // chama a si mesmo repetidamente executados
}
2. temporizador setInterval repetido dentro dos intervalos de tempo especificados, se não limpar, iria ter sido executado para baixo
setInterval ( função ( ) {
consola . log ( 1 ) ;
} , 1000 )
3. É de salientar que no setTimerout
e setInterval
uso, se o parâmetro de entrada, só pode ser passado para o nome da função:
setInterval (fn, 1000)
4. A questão seguinte é, quando estamos no processo de execução do timer, você vai encontrar uma coisa interessante, que é temporizador cumulativo, olhar para o seguinte exemplo:
Quando repetidamente clique na janela do navegador vai achar que a velocidade de impressão mais rápido e mais rápido, que é o que chamamos temporizadores acumular.
foram horas;
document.onclick = função () {
H = setInterval (função () {
console.log (1)
}, 1000)
}
Então porque é que há uma tal situação? Vamos dar um exemplo, é como uma pessoa a cada segundo usando uma impressora, ou dois pontos, em seguida, o equivalente a duas pessoas para usar a impressora, eles são, ao mesmo tempo, assim não haverá mais do que a impressão original a cada dois segundos vezes mais rápido. Então, como resolver este problema?
Temporizador acumulada problemas para resolver: para limpar o timer, e depois utilizar o temporizador . exemplos de código são os seguintes:
foram horas;
document.onclick = função () {
clearInterval (h)
h = setInterval (função () {
console.log (1)
}, 1000)
}