Hola
TurKa :
Aunque el amigo
derkenuke (¡Hola
!) tiene razón en que una búsqueda simple puede ser suficiente, me sale la "vena pedagoga".
En ambos casos el primer valor es lo mismo, una cadena y supongo que la forma "nativa" de procesarlo es con eval:
//supuesta forma nativa:
function setTimeout(accion, retardo) {
sleep(retardo); // primitivas desconocidas para pasar el rato, fumarse un cigarro, etc.
eval(accion);
}
El segundo parámetro también es exactamente igual, es el número de milisegundos de espera.
La diferencia está en que setTimeout solo hace el retardo una vez y si quisiesemos una segunda "accion" tendríamos que insertar otra sentencia setTimeout() en la misma función que se llama.
function accion() {
// aquí las cosas naormales de la función
setTimeout("accion()", 10000);
}
Ambos se pueden cancelar con clearInterval/clearTimeout, así que se puede simular el setInterval con setTimeout de la manera que expuse antes, y se puede simular setTimeout con setInterval, si ponemos en la acción una instrucción clearInterval dentro de la acción, pero para usar esas instrucciones debe asignarse antes esa instrucción "setXXXXXX()" a una variable global para que sea accesible.
Sobre su uso, indudablemente un reloj es mejor implementarlo con setInterval, pero relacionado con el reloj, una cuenta regresiva (o cualquier otro sistema de conteo "acotado" puede usarse con ambos sistemas, pero con setTimeout no es necesaria esa asignación.
No sé si sera suficiente...
Saludos