¿Es muy pesado el código? La verdad es que 20 000 iteraciones con una simple función que llames ya tarda demasiado...
Código PHP:
function cuadrado(x) {
return x*x;
}
var inicio = new Date();
var str = "";
for(var i=0; i<20000; i++) {
str += (i+" al cuadrado es "+cuadrado(i)+". <br/>");
}
document.write(str);
document.write("He tardado "+(new Date().getTime() - inicio.getTime() )+" ms.");
Me ha dicho en IE6
Y eso es evidentemente largo para cualquiera.
Lo que suelo hacer en esos casos es hacer un setTimeout() de la función que quiero iterar, le pongo un intervalo de 100ms. Al final tarda más en ejecutar la tarea, pero puedo ver qué ocurre sin que el navegador se me bloquee.
Claro que, no se puede hacer eso en todos los casos.
¿De qué se trata? Te dejo un link:
optimizar javascript que quizás te pueda venir bien leer para optimizar cosas pesadas.
Un saludo.