Les performances JavaScript dans Internet Explorer sont nulles. Pas de nouvelles là-bas. Cependant, il y a quelques trucs et astuces pour l'accélérer. Par exemple, il y a threepartseries. Pourtant, je me trouve incapable d'en tirer une performance décente. Peut-être que certains d'entre vous ont une idée de ce qu'il faut faire d'autre pour que ce soit plus rapide?Problème de performances Javascript pour Internet Explorer
Ce que je veux faire est de créer une table de taille moyenne à partir de zéro en Javascript. Dites, 300 lignes, 10 cellules chacune. Cela prend environ 5-6 secondes sur mon ordinateur pour le faire. OK, accord, c'est une plate-forme de 5 ans, mais c'est encore trop. Voici mon code fictif:
<html>
<body>
<script type="text/javascript">
function MakeTable(parent)
{
var i, j;
var table = document.createElement('table');
var insertRow = table.insertRow;
for (i = 0; i < 300; i++)
{
var row = insertRow(-1);
for (j = 0; j < 10; j++)
{
var cell = row.insertCell(-1);
cell.innerHTML = i + ' - ' + j;
}
}
parent.appendChild(table);
}
</script>
<div onclick="MakeTable(this);">Click Me!</div>
</body>
</html>
Ajouté: Hmm, apparemment chaîne concaténation (avec Array.join) est la seule façon d'aller. Eh bien, triste, bien sûr. Espérait le faire le "bon" DOM-way. :)
WTF? Vous perdez les derniers éléments du tableau ... –
C'est pourquoi j'ai dit "Evidemment cela laisse le reste quand il est divisé par 4". –