En este artículo se pone a prueba Firefox, Safari y Opera y parcelas gráficos de rendimiento:
http://ejohn.org/blog/analyzing-timer-performance/
Firefox 2, Opera y Safari todos tienen una ventana de fondo de 10 ms de retraso
Para navegadores antiguos, puede hacer una prueba como la de ese artículo. Acabo de ejecutar una prueba que tuve desde hace un tiempo de setInterval
usando un intervalo de 10ms en IE6, y obtuve un promedio de 55ms. setTimeout
parece ser menor en 35ms.
Ejecuté la prueba en Chromium y obtuve ~ 11ms promedio para un tiempo de espera de 10ms. Lo intenté con intervalos de 4ms y 1ms y obtuve ~ 4.5ms para ambos. Además, tenga en cuenta que los números pueden variar entre los sistemas operativos.
Si está interesado, aquí está el código de prueba:
<script>
// number of times to call setTimeout before calculating average
var ITERATIONS = 200;
window.onload = function()
{
testTimeout(10, +new Date, 0, 0);
}
// calls setTimeout repeatedly at a specified interval, tracking the amount
// of time that passes between successive calls
function testTimeout(interval, last, sum, ii)
{
var time = +new Date;
var difference = time - last;
sum += difference;
if (ii % ITERATIONS == 1)
{
document.body.innerHTML = sum/ITERATIONS;
sum = 0;
}
window.setTimeout(
function() {
testTimeout(interval, time, sum, ii + 1)
}, interval);
}
</script>
[Ver MDN.] (Https://developer.mozilla.org/en/DOM/window.setTimeout#Minimum_delay_and_timeout_nesting). Aunque cada vez que especifiques nunca es confiable. – pimvdb
Siempre puede escribir una prueba ... –
@BradChristie ¿Cómo puede usar UnitTest JavaScript code? TDD? – InspiredJW