estaba probando algo que leí antes acerca de cómo aleatoria Math.random()
realmente es, y quería mostrar 10000 números que se supone que es un número aleatorio entre 0 y 10000000.jQuery html(), que actúa muy lento
Para ver la prueba, elegí simplemente unirme a la matriz de números aleatorios en una cadena con <br>
entre cada número entero. Y luego acabo de hacer $("#"+elm).html(randomNumberString);
que fue muy lento. Me di cuenta de que era la generación y clasificación de números aleatorios en una matriz. Pero a medida que comencé a colocar temporizadores en mi código, me pareció que era la salida lo que estaba ralentizando todo.
Así como una prueba que hice document.getElementById(elm).innerHTML = randomNumberString;
jQuery.html(): 2500ms getElementById.innerHTML: 170 ms
He intentado esto en todos los navegadores 5, y los números estaban muy cerca en todos los navegadores. ¿Estoy usando jQuery mal en este caso? También probé anexar y buscar el elemento antes de que comenzara el temporizador, así que simplemente podía hacer $(elm).html()
, pero eso no ayudó. Parece ser la función real html()
que está ralentizando todo ...?
EDITAR me terminó haciendo esto:
randomStringNumber = "<div>" + randomStringNumber + "</div>";
y ahora todo funciona mucho más rápido: jQuery.html(): 120ms getElementById.innerHTML: 80 ms
Aún más rápido sin embargo, usar oldschool html. Y si alguien tiene una respuesta sobre por qué envolverlo en un elemento es más rápido, agradecería que ...
El punto 7 parece ser el relevante – Greg
nice! Sin embargo, no tengo idea de por qué es más rápido ... hmmmmm ..... – peirix
Debería haber agregado la sugerencia aquí. Enlace es 404 – guzart