JavaScriptIntervalos y tiempos de espera


Sintaxis

  • timeoutID = setTimeout (function () {}, milisegundos)
  • intervalID = setInterval (function () {}, milisegundos)
  • timeoutID = setTimeout (function () {}, milisegundos, parámetro, parámetro, ...)
  • intervalID = setInterval (function () {}, milisegundos, parámetro, parámetro, ...)
  • clearTimeout (timeoutID)
  • clearInterval (intervalID)

Observaciones

Si el retraso no se especifica, el valor predeterminado es 0 milisegundos. Sin embargo, el retraso real será más largo que eso ; por ejemplo, la especificación de HTML5 especifica un retraso mínimo de 4 milisegundos.

Incluso cuando se llama a setTimeout con un retraso de cero, la función a la que llama setTimeout se ejecutará de forma asíncrona.

Tenga en cuenta que muchas operaciones, como la manipulación de DOM, no se completan necesariamente incluso si ha realizado la operación y ha pasado a la siguiente oración de código, por lo que no debe asumir que se ejecutarán de forma síncrona.

El uso de setTimeout(someFunc, 0) pone en cola la ejecución de la función someFunc al final de la pila de llamadas del motor de JavaScript actual, por lo que la función se activará después de que se completen esas operaciones.

Es posible pasar una cadena que contiene el código JavaScript ( setTimeout("some..code", 1000) ) en lugar de la función ( setTimeout(function(){some..code}, 1000) ). Si el código se coloca en una cadena, se analizará posteriormente utilizando eval() . Los tiempos de espera de estilo de cadena no se recomiendan por razones de rendimiento, claridad y, a veces, de seguridad, pero es posible que vea un código anterior que usa este estilo. Se han admitido funciones de transferencia desde Netscape Navigator 4.0 e Internet Explorer 5.0.

Intervalos y tiempos de espera Ejemplos relacionados