funciones Javascript – setInterval() clearInterval() setTimeout() – 2
Tras comprobar el éxito del post sobre las funciones javascript de setInterval(), clearInterval y setTimeout() y darme cuenta que este post lo he escrito y estaba en ingles, lo he querido traducir y reducirlo un poco para aclarar mas las diferencias.
Lectura recomendada: 10 Libros gratis de JavaScript
setInterval()
Este método es utilizado para ejecutar repetidamente una función en un intervalo establecido. El formato de este método es:
El primer parámetro ("functionName()") es el nombre de la función que desea ejecutar.
Observa que el nombre de la función está entre comillas. Es tratado como una cadena para evitar que se ejecute de inmediato. El segundo parámetro (tiempo) es la cantidad de la demora en milisegundos, entre cada vez que la función se ejecuta (1 minuto = 60000 milisegundos).
Esto es útil en la animación, para la rotación de imágenes en una galería o tal vez refrescar la pantalla.
Por ejemplo, para volver a cargar una página después de un intervalo de 10 minutos (600.000 milisegundos), prueba este script:
function reFresh() {
location.reload(true)
} window.setInterval(“reFresh()”,600000);
1
2
3
4
5
6
7
8
9
10
<h4><em><em>clearInterval()</em></em></h4>
Este método se utiliza para detener el bucle cronometrado que se inició con el método setInterval () anterior.
El formato es:
```window.clearInterval(varName);```
Con el fin de utilizarlo, el bucle debe ser asignado a una variable.
Volvamos a nuestro script actualiza la página anterior.
Sólo tenemos que añadir la palabra reservada var delante del bucle setInterval()
function reFresh() { window.open(location.reload(true)) } var repeticion = window.setInterval(“reFresh()”,600000);
1
Entonces podríamos crear un botón para detener la actualización de la página.
```
setTimeout()
Este método se utiliza para ejecutar una función de JavaScript después de una determinada cantidad de tiempo. (El nombre es un poco engañoso. No se detiene el script para un período de tiempo, sino que espera un período de tiempo antes de empezar.)
A diferencia del método setInterval (), sólo se ejecuta una vez.
El formato es:
window.setTimeout("functionName()",tiempo);