La función timer.restart() en D3.js se usa para reiniciar un temporizador con la función y el retraso dados. La función timer.restart() se usa cuando se quiere restablecer el temporizador y comenzar de nuevo.
Sintaxis:
timer.restart(callback, delay);
Parámetros: Toma dos parámetros como se mencionó anteriormente y se describe a continuación:
- devolución de llamada: Es la función que se detendrá o iniciará después de un retraso determinado.
- retraso: Es el tiempo después del cual la función se ejecutará o se detendrá
Ejemplo 1: Cuando no se da ningún retraso.
HTML
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content= "width=device-width, initial-scale=1.0"> </head> <body> <!-- Fetching from CDN of D3.js --> <script type="text/javascript" src="https://d3js.org/d3.v4.min.js"> </script> <script> count = 0; let func = function (e) { console.log(e) if (e > 40) { console.log("Timer stopped after 40ms") if (e > 40) { count++; // Restarting the timer again console.log("Timer restarts") timer.restart(func) } if (count > 2) { timer.stop(); console.log( "count > 2 so timer is stopped") } } } var timer = d3.timer(func); </script> </body> </html>
Producción:
Ejemplo 2: Cuando se da un retraso.
HTML
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content= "width=device-width, initial-scale=1.0"> </head> <body> <!-- Fetching from CDN of D3.js --> <script type="text/javascript" src="https://d3js.org/d3.v4.min.js"> </script> <script> count = 0; let func = function (e) { console.log(e) if (e > 10) { console.log("Timer stopped after 10ms") if (e > 10) { count++; // Restarting the timer again console.log("Timer restarts") timer.restart(func) } if (count > 4) { timer.stop(); console.log( "count > 4 so timer is stopped") } } } // A delay of 2000ms var timer = d3.timer(func, 2000); </script> </body> </html>
Producción: